网站建设的技术需要多少钱,湖南省建设厅官网站,公众号开发合同,2015年做啥网站致富学习java多线程#xff0c;请同时参阅 Java多线程 信号量和屏障实现控制并发线程数量#xff0c;主线程等待所有线程执行完毕1 学习java多线程#xff0c;请同时参阅#xff1a;java多线程CountDownLatch简单测试
Exchanger用于进行两个线程之间的数据交换。它提供一个… 学习java多线程请同时参阅 Java多线程 信号量和屏障实现控制并发线程数量主线程等待所有线程执行完毕1 学习java多线程请同时参阅java多线程CountDownLatch简单测试
Exchanger用于进行两个线程之间的数据交换。它提供一个同步点在这个同步点两个线程可以交换彼此的数据。 import java.util.concurrent.Exchanger;
import java.util.concurrent.ExecutorService;
import java.util.concurrent.Executors;public class ExchangeDemo {public static void main(String[] args) throws InterruptedException {ExecutorService threadPool Executors.newFixedThreadPool(2);final Exchanger exchanger new Exchanger();for(int i0;i6;i){threadPool.execute(new Runnable(){Overridepublic void run() {Object data ---JavaThread-----exchanger----- Thread.currentThread().getName();try {System.out.println(------kai-------threadName----- Thread.currentThread().getName() -data ---- data);data exchanger.exchange(data);System.out.println(-------wan------threadName----- Thread.currentThread().getName() -data ---- data);Thread.sleep(10000);System.out.println(------------------------------------------------------------------------------- );} catch (InterruptedException e) {e.printStackTrace();}}});}System.out.println(---------------------开始交换数据--------------------- );}}