Java并发编程:通过CountDownLatch实现定时任务

原创 港控/mmm° 2024-09-16 06:03 95阅读 0赞

在Java并发编程中,CountDownLatch是一种同步工具,它用于控制一个或多个线程等待其他线程完成动作。

下面是如何通过CountDownLatch实现定时任务的示例:

  1. 创建CountDownLatch实例并设置初始值,比如5(表示5个任务需要完成后,其他任务才能开始)。
  1. CountDownLatch latch = new CountDownLatch(5);
  1. 创建一个或多个线程,每个线程执行相同的操作,但是加入到特定的CountDownLatch等待事件发生。
  1. // 线程1
  2. new Thread(() -> {
  3. try {
  4. latch.await(); // 等待其他任务完成
  5. System.out.println("Task 1 finished");
  6. } catch (InterruptedException e) {
  7. e.printStackTrace();
  8. }
  9. }).start();
  10. // 线程2
  11. new Thread(() -> {
  12. try {
  13. latch.await(); // 等待其他任务完成
  14. System.out.println("Task 2 finished");
  15. } catch (InterruptedException e) {
  16. e.printStackTrace();
  17. }
  18. }).start();

以上代码中,两个线程分别执行,当CountDownLatch的计数器减少到0时(表示所有任务都已完成),线程开始执行后续操作。

文章版权声明:注明蒲公英云原创文章,转载或复制请以超链接形式并注明出处。

发表评论

表情:
评论列表 (有 0 条评论,95人围观)

还没有评论,来说两句吧...

相关阅读