hymn

忽有故人心头过,回首山河已是秋。

  menu
132 文章
0 浏览
0 当前访客
ღゝ◡╹)ノ❤️

java-Barrier

闭锁: 等待一组操作结束,在执行相关操作,闭锁时一次行操作,一旦进入终止操作,就不能重置

Barrier 栅栏:等待所有线程到达栅栏在执行

一、CyclicBarrier: 可以反复在栅栏集合

方法:

CyclicBarrier await 	// 当线程到达栅栏时调用await 方法,这个方法将一直阻塞,
      			// 直到所有的线程到达栅栏,所有线程将被释放,
      			// 如果调用await 失败或者超时,抛出 BrokenBarrierException
      			// 如果释放成功,将为每一个线程返回一个唯一的到达索引号,
      			// 这些索引可以选出一个领导线程,在下次执行时做一些特殊的事情

二、Exchange :它是一个两方栅栏(twe-party),各方在栅栏出进行数据交换

当双方执行不对称交换时很有用,例如一个线程向缓冲区写入数据,另一个线程从缓冲区中读取。两个线程通过Exchange交换数据时,可以把一方的数据安全的交给另一方。


标题:java-Barrier
作者:hymn
地址:https://dxyhymn.com/articles/2020/05/29/1590732584827.html