信号量semaphore 读写锁ReadWriteLock 倒计时器CountDownLatch 循环栅栏 CyclicBarrier 线程阻塞工具类LockSupport

信号量semaphore    允许多个线程同时访问

读写锁ReadWriteLock   在频繁的读写耗时中,读之间不阻塞

 倒计时器CountDownLatch    obj = new CountDownLatch(10)  设置预“任务”10次,obj.CountDown();次数减一    obj.await()等待任务完成(也就是次数减到0)

 循环栅栏 CyclicBarrier    和倒计时器类似,不过他在完成操作后,还可以进行指定的任务

线程阻塞工具类LockSupport   可以在线程任意位置让线程阻塞   park()方法使程序阻塞,LockSupport类使用了类似信号的机制,为每一个线程准备了一个许可,如果许可可用,park()函数会立即返回,并且消费这个许可(也就是将许可变成不可用),如果许可不可用,就会阻塞,而unpark()则使得一个许可变成可用

原文地址:https://www.cnblogs.com/sg9527/p/8000935.html