ThreadLocal
来源:互联网 发布:手机淘宝官方下载 编辑:程序博客网 时间:2024/06/11 07:20
ThreadLocal
MyThread:
package com.itheima.threadlocal;public class MyThread extends Thread{private ThreadLocal tl;public MyThread(ThreadLocal tl) {this.tl = tl;}@Overridepublic void run() {System.out.println(tl.get()+"aaaaaaaaaaaa"); }}TestThreadLocal:
package com.itheima.threadlocal;public class TestThreadLocal {public static void main(String[] args) {ThreadLocal tl = new ThreadLocal(); //当前线程tl.set("p");MyThread mt = new MyThread(tl); //开启了一个新的线程mt.start();System.out.println(tl.get()); //取不出来}}模拟ThreadLocal的设计:
public class ThreadLocal{private Map<Runnable,Object> container = new HashMap<Runnable,Object>();public void set(Object value){container.put(Thread.currentThread(),value);//用当前线程作为key}public Object get(){return container.get(Thread.currentThread());}public void remove(){container.remove(Thread.currentThread());}}总结:调用该类的get方法,永远返回当前线程放入的数据。线程局部变量
把当前线程的东西存入ThreadLocal中,其他线程就访问不到,保证线程安全
0 0
- ThreadLocal
- ThreadLocal
- ThreadLocal
- ThreadLocal
- ThreadLocal
- ThreadLocal
- ThreadLocal
- ThreadLocal
- ThreadLocal
- ThreadLocal
- ThreadLocal
- ThreadLocal
- ThreadLocal
- ThreadLocal
- ThreadLocal
- threadlocal
- ThreadLocal
- ThreadLocal
- 磁盘阵列无法挂载的问题
- background-size值为cover和值为100%的区别
- IE不兼容forEach解决方案
- 关于eclipse导入v4包源码的解决方案
- 微信支付
- ThreadLocal
- 全网独家MongoDB Certified DBA Associate考试认证视频
- oracle 11g 下修改服务器字符集
- 在Xcode工程中集成Cocos教程
- Edward's skill xmind picture in 2017
- 淘宝开发
- Linux设备模型——设备驱动模型和sysfs文件系统解读
- Vim操作摘记-光标移动、Mark、选中
- 分层架构设计思想