Java的Exchange的用法
时间: 2023-06-12 17:02:10 浏览: 83
Java中的Exchange通常是指java.util.concurrent包中的Exchange类,它允许两个线程在同一个点上交换对象。具体用法如下:
1. 创建Exchange对象
Exchange<String> exchanger = new Exchange<>();
2. 两个线程使用Exchange对象交换数据
线程1:
String data = "Data from Thread 1";
try {
String receivedData = exchanger.exchange(data);
System.out.println("Data received from Thread 2: " + receivedData);
} catch (InterruptedException e) {
e.printStackTrace();
}
线程2:
String data = "Data from Thread 2";
try {
String receivedData = exchanger.exchange(data);
System.out.println("Data received from Thread 1: " + receivedData);
} catch (InterruptedException e) {
e.printStackTrace();
}
以上代码中,两个线程分别使用exchange()方法来交换数据。如果某个线程调用了exchange()方法,它会被阻塞直到另外一个线程调用exchange()方法。返回值是另外一个线程交换过来的数据。