CountDownLatch.await会释放Cpu的资源吗?

来源:6-2 J.U.C之AQS-CountDownLatch

Heyh

2018-07-27

一般会用到CountDownLatch.await的情况是主线程等待子线程的执行,那么着这个等待过程依旧会去竞争CPU执行权限,这样不就造成资源浪费了?

写回答

1回答

Jimin

2018-07-27

你好,countDownLatch的await方法,需要等到其他操作先完成的那个线程调用的,先将线程休眠,直到其他操作完成,计数器减为0,才会唤醒因此休眠的线程。过程中会有一些资源浪费,但涉及到处理多个线程协同,该有的浪费是避免不了的,而且本身jdk实现已经做了不少优化了。

如果我们要做多个线程这种同步的操作,countDownLatch基本是最好的选择,使用的便捷性、功能的稳定性以及处理的细节,都是ok的

1
0

Java高并发编程,构建并发知识体系,提升面试成功率

构建完整并发与高并发知识体系,倍增高薪面试成功率!

3923 学习 · 832 问题

查看课程