java中如何知道线程全部执行完

在多线程开辟的时辰有时辰我们常用 java.util.concurrent.Executors的线程池,多个线程异步执行的时辰,我们往往欠好判定是否线程池中所有的子线程都已经执行完毕,今天就跟着小编一路进修几种体例吧!

工具/原料

  • 电脑
  • eclipse

方式/步骤

  1. 1

    安装而且设置装备摆设好JDK开辟情况,打开eclipse开辟东西。

  2. 2

    方案一:

    利用 isTerminated() 方式去判定线程池中所有的子线程是否均执行完毕,具体看下图展示:

  3. 3

    方案二:利用闭锁(CountDownLatch)来实现,CountDownLatch是一种矫捷的闭锁实现,它可以使一个或多个线程期待一组事务发生。具体看下图展示:

  4. 4

    方案三:连系方案一和二可以发生了另一种优雅的实现,具体看以下代码:

  5. 5

    以上方案各有利弊,运用时看你是基于什么方面的考虑。

注重事项

  • 若是本经验帮忙到您 请给我投票和点赞~
  • 发表于 2018-11-02 00:00
  • 阅读 ( 164 )
  • 分类:其他类型

相关问题

0 条评论

请先 登录 后评论