-
CountDownLatch 是一个线程等待其他线程执行结束之后,自己再去执行自己的代码, CyclicBarrier 是多个线程互相等待,等待设置的线程数都到齐之后,一起去执行代码。
-
CountDownLatch 的计数是减 1 直到 0,到0之后,等待的线程自己再去执行自己的代码,CyclicBarrier 是加 1,直到指定值,再一起去执行。
-
CountDownLatch 是一次性的, CyclicBarrier 可以循环利用,相当于分批次执行。
-
CyclicBarrier 可以在最后一个线程达到屏障之前,选择先执行一个操作。
-
Semaphore ,需要拿到许可才能执行,并可以选择公平和非公平模式
CountDownLatch ,CyclicBarrier ,Semaphore
最新推荐文章于 2024-07-27 17:56:15 发布