Java多线程中的ThreadLocal,可继承,可修改
天飞 2017-12-29 15:22:53 浏览557 评论0摘要: Java多线程中的ThreadLocal,可继承,可修改。
Java多线程中的ThreadLocal,可继承,可修改。
package test;
import java.util.Date;
public class InheritableThreadLocalExt extends InheritableThreadLocal<Object>{
@Override
protected Object initialValue() {
return new Date().getTime();
}
@Override
protected Object childValue(Object parentValue) {
return parentValue + " insert at child thread.";
}
}
package test;
public class Tools {
public static InheritableThreadLocalExt tl = new InheritableThreadLocalExt();
}
package test;
public class ThreadA extends Thread {
@Override
public void run() {
try {
for (int i = 0; i < 10; i++) {
System.out.println("from ThreadA get value=" + Tools.tl.get());
Thread.sleep(100);
}
} catch (InterruptedException e) {
e.printStackTrace();
}
}
}
package test;
public class Run {
public static void main(String[] args) {
try {
for (int i = 0; i < 10; i++) {
System.out.println("from Main get value=" + Tools.tl.get());
Thread.sleep(100);
}
Thread.sleep(5000L);
ThreadA a = new ThreadA();
a.start();
} catch (InterruptedException e) {
e.printStackTrace();
}
}
}
输出:
from Main get value=1514531585175
from Main get value=1514531585175
from Main get value=1514531585175
from Main get value=1514531585175
from Main get value=1514531585175
from Main get value=1514531585175
from Main get value=1514531585175
from Main get value=1514531585175
from Main get value=1514531585175
from Main get value=1514531585175
from ThreadA get value=1514531585175 insert at child thread.
from ThreadA get value=1514531585175 insert at child thread.
from ThreadA get value=1514531585175 insert at child thread.
from ThreadA get value=1514531585175 insert at child thread.
from ThreadA get value=1514531585175 insert at child thread.
from ThreadA get value=1514531585175 insert at child thread.
from ThreadA get value=1514531585175 insert at child thread.
from ThreadA get value=1514531585175 insert at child thread.
from ThreadA get value=1514531585175 insert at child thread.
from ThreadA get value=1514531585175 insert at child thread.
用云栖社区APP,舒服~
【云栖快讯】直播推荐--阿里巴巴高级数据库专家带你技术进阶之全文检索和相似搜索实践,还不快快报名~ 详情请点击 评论 (0) 点赞 (0) 收藏 (0)相关文章
- Java多线程知识小抄集(一)
- 知识沉淀
- synchronized 专题
- java面试
- Java程序员面试中的多线程问题
- Java ThreadLocal的使用
- Java程序员面试中的多线程问题
- Java并发编程笔记之ThreadLocal源码分析
- java并发编程读书笔记(1)-- 对象的共享
- java并发编程读书笔记(1)-- 对象的共享