线程范围内共享数据
2012-02-03 09:36
281 查看
import java.util.HashMap; import java.util.Map; import java.util.Random; /** * 线程范围内共享数据(创建两个线程并存储不同的数据,线程独立) * @author tanfei * @date 2012-02-02 */ public class ThreadScopeShareData { private static Map<Thread, Integer> threadData = new HashMap<Thread, Integer>(); //共享数据集合 public static void main(String[] args) { // TODO Auto-generated method stub /*创建两个线程*/ for(int i = 0; i < 3; i++) { new Thread(new Runnable(){ @Override public void run() { int data = new Random().nextInt(); //造数据 System.out.println(Thread.currentThread().getName() + " put data: " + data); threadData.put(Thread.currentThread(), data); //将数据放入集合,以便线程操作数据 new A().get(); new B().get(); }}).start(); } } static class A { public void get() { int data = threadData.get(Thread.currentThread()); //根据当前线程取得数据 System.out.println("A from " + Thread.currentThread().getName() + " get data:" + data); } } static class B { public void get() { int data = threadData.get(Thread.currentThread()); System.out.println("B from " + Thread.currentThread().getName() + " get data: " + data); } } }
相关文章推荐
- 线程范围内数据共享
- Java基础加强 线程范围内数据共享设计模式
- 高级并发编程学习-线程范围内安全共享数据(使用ThreadLocal方式)
- java多线程学习(三)---线程范围内数据共享
- java线程范围内的数据共享
- 黑马程序员---java中如何实现线程范围内共享数据
- 多线程之线程范围内的数据共享ThreadLocal
- 【java并发】线程范围内共享数据
- 线程范围内的共享数据(二)
- 多线程_线程范围内数据共享
- ThreadLocal-------线程范围内的数据共享
- ThreadLocal实现线程范围内的数据共享
- 张孝祥实现线程范围内数据共享(学习笔记)
- 线程范围内的共享数据(一)
- 多线程并发库高级应用 之 线程范围内共享数据
- 黑马程序员-线程范围内的数据共享之ThreadLocal
- 线程范围内共享数据
- java多线程:5、线程范围内的数据共享_ThreadLocal
- 线程范围内共享数据
- Java线程与并发库高级应用-线程范围内共享数据ThreadLocal类