![](https://img-blog.csdnimg.cn/20201014180756738.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
Thread
zmywhhit
这个作者很懒,什么都没留下…
展开
-
java并发编程实践 volatile
在没有说volatile之前先看看未使用volatile导致问题的情况。例如下面的TestVolatile1编译的时候添加了 -server。则程序不会终止. 这是由于编译器对其进行了优化,while(!exit)因为内部没有修改exit变量且没有声明为volatile类型,JVM会把判断提前,类似于优化成如下。 if(exit) { while(true) {原创 2012-07-31 16:35:09 · 813 阅读 · 2 评论 -
java并发编程实践 ThreadLocal
ThreadLocal 的功能,能够为各个访问的线程copy出初始化后的资源副本,因此各个访问资源的线程在改变资源状态的时候,只是改变分配给该线程副本的状态,因此各个线程之间没有干扰,可以按照各自设定的序列执行。 对比代码如下: UniqueInt与iTest分别为两个Integer类型的数据。UniqueInt应用了ThreadLocal。 线程T1与T2分别进行-1与+2操作。 如果没原创 2012-07-27 11:32:03 · 431 阅读 · 0 评论