`
tanzhen-1988
  • 浏览: 51410 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

ThreadLocal的疑问

阅读更多
package com.threadlocal;

import java.util.LinkedList;
import java.util.List;

public class Warehouse {
	
	private static ThreadLocal<List<String>> store = new ThreadLocal<List<String>>(){
		@Override
		protected List<String> initialValue() {
			// TODO Auto-generated method stub
			return new LinkedList<String>(); 
		}
	}; 
    
    public void put(String s){  
        List<String> list = store.get();  
        list.add(s);  
//        store.set(list);
        System.out.println(Thread.currentThread().getName() + "放入: " + s);      
    }  
      
    public synchronized void get(){  
        List<String> list = store.get();  
        System.out.println(Thread.currentThread().getName() + "长度: " + list.size());  
        if(list != null){  
        	for(String temp : list){  
        		System.out.print(temp+" ");  
        	}
        	System.out.println();
        }else{  
        	System.err.println("ERROR!");  
        }      
    }  

}

 

0
1
分享到:
评论
3 楼 tanzhen-1988 2013-08-05  
list本身就是store数据的一个引用,list的操作就是对store的数据的操作。
2 楼 smallbee 2013-08-02  
list不是从store拿出来的么 搞笑
1 楼 朝风一旭 2013-08-02  
你直接操作的就是list对象啊
list放在store里面当然可以打印出来啊

相关推荐

Global site tag (gtag.js) - Google Analytics