如何保证多个线程同时启动?

可以 wait()、notify() 实现;也可以使用发令枪 CountDownLatch 实现。

CountDownLatch 实现较简单,如下:

package constxiong.interview;import java.util.concurrent.CountDownLatch;/** * 测试同时启动多个线程 * @author ConstXiong */public class TestCountDownLatch {private static CountDownLatch cld = new CountDownLatch(10);public static void main(String[] args) {for (int i = 0; i <10; i++) {Thread t = new Thread(new Runnable() {public void run() {try {cld.await();//将线程阻塞在此,等待所有线程都调用完start()方法,一起执行} catch (InterruptedException e) {e.printStackTrace();}System.out.println(Thread.currentThread().getName() + ":" + System.currentTimeMillis());}});t.start();cld.countDown();}}}

给TA打赏
共{{data.count}}人
人已打赏
Java

synchronized和Lock有什么区别?

2020-7-31 1:03:20

Java

synchronized和ReentrantLock区别是什么?

2020-7-31 1:06:40

本站所发布的一切源码、模板、应用等文章仅限用于学习和研究目的;不得将上述内容用于商业或者非法用途,否则,一切后果请用户自负。本站信息来自网络,版权争议与本站无关。您必须在下载后的24个小时之内,从您的电脑中彻底删除上述内容。如果您喜欢该程序,请支持正版,购买注册,得到更好的正版服务。如有侵权。本站内容适用于DMCA政策。若您的权利被侵害,请与我们联系处理,站长 QQ: 84087680 或 点击右侧 私信:盾给网 反馈,我们将尽快处理。
⚠️
本站所发布的一切源码、模板、应用等文章仅限用于学习和研究目的;不得将上述内容用于商业或者非法用途,否则,一切后果请用户自负。本站信息来自网络,版权争议与本站无关。您必须在下载后的24个小时之内,从您的电脑中彻底删除上述内容。如果您喜欢该程序,请支持正版,购买注册,得到更好的正版服务。如有侵权。本站内容适用于DMCA政策
若您的权利被侵害,请与我们联系处理,站长 QQ: 84087680 或 点击右侧 私信:盾给网 反馈,我们将尽快处理。
0 条回复 A文章作者 M管理员
    暂无讨论,说说你的看法吧
个人中心
购物车
优惠劵
今日签到
有新私信 私信列表
搜索