`
azvf
  • 浏览: 144438 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

主线程等待所有线程运行完成

阅读更多
	
ThreadPoolExecutor executor = new ThreadPoolExecutor(5,5, 60, TimeUnit.SECONDS, new LinkedBlockingQueue<Runnable>()); 
        int n = threads.size(); 
        for(int i=0; i<n; i++) { 
            executor.execute(threads.get(i)); 
        } 
        executor.shutdown(); 
        try { 
            boolean loop = true; 
            do {    //等待所有任务完成 
                loop = !executor.awaitTermination(2, TimeUnit.SECONDS); 
            } while(loop); 
        } catch (InterruptedException e) { 
        } 

	long end = System.currentTimeMillis();
	System.out.println("我是System.out.println,5个线程共运行了那么多的时间:" + (end - begin));

分享到:
评论

相关推荐

    Java主线程等待子线程执行完毕

    非常实用不解释,用了才知道 个人收藏的一部分资料将陆续给大家上传

    qt 多线程 防止主线程做循环操作导致界面假死

    qt 多线程 防止主线程做循环操作导致界面假死。试过多线程的几种方法,只有这个方法可行。代码亲测可行。在子线程死循环,界面正常不死!!!

    QT多线程—主界面卡死解决方案

    由于耗时的操作会独占系统cpu资源 ,让界面卡死在那里,这时需要考虑多线程方案,将耗时的操作放在主线程之外的线程中执行。该demo通过多线程为主界面卡死提供一种解决方案。

    多线程机制

    7、 浅析 Java Thread.join() : java多线程实现主线程等待所有子线程执行完毕 16 8、 线程运行中抛出异常的处理 19 9、 Callable 有返回值的线程 20 10、 Callable结合FutureTask的多线程使用(免打扰模式) 24

    Python-threading:线程

    主线程可以先运行完毕,等待子线程结束后 清理内存 等待时间不影响子线程的运行 子线程使用join()来阻塞主线程(这样跟单线程有啥区别) 多线程的全局变量是共享的会出现资源抢夺问题 解决资源抢夺需要上互斥锁 单线程...

    CA多线程获取值源码

    在本代码中演示了等待各个线程执行完毕然后在主线程根据各线程返回的值来进行后面的操作。 在本代码中,没有考虑效率问题,望大家见谅,数据也仅仅是为了程序而作,无意义。如果有错误或者不合适的地方,希望大家来...

    Python线程同步的实现代码

    子线程在主线程运行结束后,会继续执行完,如果给子线程设置为守护线程(setDaemon=True),主线程运行结束子线程即结束; 如果join()线程,那么主线程会等待子线程执行完再执行。 import threading import time def...

    C# 线程相关知识总结

    但是对于.NET的客户端程序(Console,WPF,WinForms)是由CLR创建的单线程(主线程,且只创建一个线程)来启动。在该线程上可以创建其他线程。 图: 线程工作方式 多线程由内部线程调度程序管理,线程调度器通常是...

    python并发编程之多线程

     练习一:练习二:三个任务,一个接收用户输入,一个将用户输入的内容格式化成大写,一个将格式化后的结果存入文件主线程等待子线程结束无论是进程还是线程,都遵循:守护xxx会等待主xxx运行完毕后被销毁需要强调的...

    linux c++线程

    主线程是还是等待 client发送的信息,创建的线程也是做简单的任务处理! 现在遇到的问题是,不知道咋回事,主线程 pthread_cond_signal (&cond) 发送的条件 似乎 新的线程 pthread_cond_wait (&cond, &mutex) 没有...

    进程调度算法模拟

    主线程创建20个子线程,分别实现FCFS调度、SJF调度、RR调度、优先级调度和多级队列调度,并且计算每个调度的平均等待时间。(其中优先级调度和多级队列调度为选做)。 对于每个子线程,在其运行期间,输出其占用的...

    Java多线程爬取网页

    适合:简单地获取纯文字网页的内容。需要创建子线程or修改爬取网页请在testpc.java中修改,webpc用于获取指定网页内容,runthread用于创建子线程爬虫,testpc则是主线程,用于管理子线程的创建、运行与等待。

    python使用Thread的setDaemon启动后台线程教程

    2)setDaemon(False)(默认情况): 当主线程退出时,若前台线程还未结束,则等待所有线程结束,相当于在程序末尾加入join(). 实例: 例子描述:主线程调用giveures给出字符串s的md5摘要,同时在giveures当中启动一个线程打印...

    Linux线程退出方式总结(推荐)

    这个标志位需要主线程(或其他线程)设置,设置后,主线程调用pthread_join接口进入休眠(接口参数指定了等待的线程控制指针),子线程退出后,主线程会接收到系统的信号,从休眠中恢复,这个时候就可以去做相关的...

    linux系统编程之线程.zip

    exit,则整个进程的所有线程都终止,由于从main函数return也相当于调用exit,为了防止新创建的线程还没有得到执行就终止,我们在main函数return之前延时1秒,这只是一种权宜之计,即使主线程等待1秒,内核也不一定会...

    吉林大学2022年操作系统实验报告(仅供参考)

    实验一: 用pipe()创建一个管道文件,然后用fork()创建两个生产进程和两个消费进程,它们之间通过pipe...主线程按调度算法唤醒一个子线程,被选中线程执行一个时间单位,然后将控制权交给主线程判断是否需要重新调度。

    Java Thread 的 run() 与 start() 的区别.docx

    1) start:用start方法来启动线程,真正实现了多线程运行,这时无需等待run方法体代码执行完毕而直接继续执行下面的代码。通过调用Thread类的start()方法来启动一个线程,这时此线程处于就绪(可运行)状态,并没有...

    EasyKitThread.zip

    具体逻辑为 清除线程池中队列未执行的任务,阻塞主线程,并等待正在执行的线程逻辑,等待执行完后打开主线程。 1&gt;内置了一个线程池 2&gt;将UE4的Graph/已有线程池(ablone)线程方法封装的更加好用

Global site tag (gtag.js) - Google Analytics