java多线程之通过Exchanger线程间传递数据
来源:互联网 发布:詹姆斯赛季数据 编辑:程序博客网 时间:2024/06/12 14:47
public class ExchangerTest {public static void main(String[] args) {ExecutorService service = Executors.newCachedThreadPool();final Exchanger exchanger = new Exchanger();service.execute(new Runnable(){public void run() {try {String data1 = "zxx";System.out.println("线程" + Thread.currentThread().getName() + "正在把数据" + data1 +"换出去");Thread.sleep((long)(Math.random()*10000));String data2 = (String)exchanger.exchange(data1);System.out.println("线程" + Thread.currentThread().getName() + "换回的数据为" + data2);}catch(Exception e){}}});service.execute(new Runnable(){public void run() {try {String data1 = "lhm";System.out.println("线程" + Thread.currentThread().getName() + "正在把数据" + data1 +"换出去");Thread.sleep((long)(Math.random()*10000));String data2 = (String)exchanger.exchange(data1);System.out.println("线程" + Thread.currentThread().getName() + "换回的数据为" + data2);}catch(Exception e){}}});}}
运行结果如下:
线程pool-1-thread-1正在把数据zxx换出去
线程pool-1-thread-2正在把数据lhm换出去
线程pool-1-thread-1换回的数据为lhm
线程pool-1-thread-2换回的数据为zxx
0 0
- java多线程之通过Exchanger线程间传递数据
- Java多线程之~~~使用Exchanger在线程之间交换数据
- JAVA多线程—Exchanger-线程间交换数据
- Java多线程之Exchanger
- JAVA多线程之Exchanger
- Java多线程之Exchanger
- Java多线程之Exchanger
- java多线程之Exchanger
- java 多线程之Exchanger
- 七.java多线程之线程数据传递
- Java线程之Exchanger
- java线程之Exchanger
- Java多线程与并发库高级应用之线程数据交换Exchanger
- java 线程间交换数据的Exchanger
- java多线程-Thread两个线程交换数据Exchanger
- Java多线程/并发25、Exchanger线程数据交换
- java多线程之(Exchanger)
- (十二)java多线程之Exchanger
- Binary Tree Preorder Traversal
- OC基础2:一些基本概念
- Java学习笔记六(I/O流)
- Quake2 源代码的生成和运行
- 【C++探索之旅】第一部分第三课:第一个C++程序
- java多线程之通过Exchanger线程间传递数据
- 网狐的加密模块,映射加密算法分析
- Webstrom酷炫主题
- 找寻链表的倒数K个结点
- bootstrap中的路由与锚点混合使用锚点乱跳问题
- 【Java】RandomAccessFile
- AI1.1-人工智能史
- 2015063001 - Iterable接口API
- 关于网狐棋牌6603源码的整理、编译和搭建