线程学习1:ThreadLocal的使用

线程局部变量;对于多线程资源共享的问题,同步机制采用了“以时间换空间”的方式,而ThreadLocal采用了“以空间换时间”的方式。前者仅提供一份变量,让不同的线程排队访问,而后者为每一个线程都提供了一份变量,因此可以同时访问而互不影响。

栗子:

结果:

可以看到输出的线程顺序并非最初定义线程的顺序,理论上可以说明多线程应当是并发执行的,但是依然可以保持每个线程里面的值是对应的,说明这些值已经达到了线程私有的目的,hreadLocal做到了T为变量在每个线程中都创建了一个副本,互不影响。

猜你喜欢

转载自blog.csdn.net/Java_Mrsun/article/details/88691106
今日推荐