本人邮箱: kco1989@qq.com
欢迎转载,转载请注明网址 http://blog.csdn.net/tianshi_kco
github: https://github.com/kco1989/kco
代码已经全部托管github有需要的同学自行下载
引言
今天我们讲最后一个同步工具类Exchanger
,这个比较简单,就是让两个线程交换数据.
理论
Exchanger
只有两个方法而已,而且两个还是一样的,只是参数不通而已
* exchange(V x)
跟另外一个线程交换数据x,如果另外一个线程的数据准备好,那么当前线程会立刻返回,并获得另外一个线程的数据;否则当前线程会进入等待状态
* V exchange(V x, long timeout, TimeUnit unit)
: 跟exchange
,如果会有一个指定的超时时间,如果在等待时间超时了,而且还没有收到对方的数据