【Java】11.Exchanger使用与分析
来源:互联网 发布:淘宝改后台软件多少钱 编辑:程序博客网 时间:2024/05/21 06:26
1.官方资料
The java.util.concurrent.Exchanger class represents a kind of rendezvous point where two threads can exchange objects. Here is an illustration of this mechanism:
Exchanging objects is done via one of the two exchange() methods. Here is an example:
2.示例:
package com.naton.manager.concurrent.exchanger;import java.util.concurrent.Exchanger;public class ExChangerTest {public static void main(String[] args) {Exchanger exchanger = new Exchanger();ExchangerRunnable exchangerRunnable1 = new ExchangerRunnable(exchanger, "A");ExchangerRunnable exchangerRunnable2 = new ExchangerRunnable(exchanger, "B");new Thread(exchangerRunnable1).start();new Thread(exchangerRunnable2).start();}static class ExchangerRunnable implements Runnable{ Exchanger exchanger = null; Object object = null; public ExchangerRunnable(Exchanger exchanger, Object object) { this.exchanger = exchanger; this.object = object; } public void run() { try { Object previous = this.object; this.object = this.exchanger.exchange(this.object); System.out.println( Thread.currentThread().getName() + " exchanged " + previous + " for " + this.object ); } catch (InterruptedException e) { e.printStackTrace(); } }}}输出结果:Thread-0 exchanged A for BThread-1 exchanged B for A
3.使用场景分析 线程之间交换数据
阅读全文
0 0
- 【Java】11.Exchanger使用与分析
- 《Java源码分析》:Exchanger
- 《Java源码分析》:Exchanger
- Java 并发 --- Exchanger源码分析
- Java并发编程核心方法与框架-exchanger的使用
- java线程中Exchanger使用
- Java Exchanger
- Java Exchanger
- java.util.concurrent包(7)-Exchanger使用
- 【Java并发编程】02.Exchanger的使用
- java再复习-Exchanger的使用
- Java多线程 -- JUC包源码分析16 -- Exchanger源码分析
- java.util.concurrent.Exchanger应用范例与原理浅析
- java.util.concurrent.Exchanger应用范例与原理浅析--转载
- 【多线程】java.util.concurrent.Exchanger应用范例与原理浅析
- java.util.concurrent.Exchanger应用范例与原理浅析
- java.util.concurrent.Exchanger应用范例与原理浅析
- Java多线程之~~~使用Exchanger在线程之间交换数据
- 事件冒泡与事件捕获
- 2017.12.11
- centos 安装jdk
- docker教程(2)--Dockerfile
- jquery练习5 鼠标经过改变样式(TBC)
- 【Java】11.Exchanger使用与分析
- STM8L151关于串口的例程
- Ubuntu下查看CPU、内存和硬盘详细信息的几个命令(分色排版)
- permission
- Java Web框架学习
- BZOJ2756 [SCOI2012]奇怪的游戏
- ajax异步回调解析List集合
- sublime Text 3中安装vue高亮插件以及解决可能出现的问题
- Random的nextInt用法