摘要: 怎样做到线程安全?1、不要跨线程共享变量;2、使状态变量为不可变的;3、或者在任何访问状态变量的时候使用同步同步synchronized//静态的synchronized方法从Class对象上获取锁synchronized(lock){ //访问或修改被锁保护的共享状态}当一个线程请求其他线程已经占用锁时,请求被阻塞,而锁是可以重进入的,因此线程在获取它自己占用的锁时,请求会成功,重进入意味着请求是基于每线程,而不是基于每调用。重进入方便锁行为封装,下面这个例子能很好理解重进入:public class Widget { public synchronized void doS... 阅读全文
posted @ 2013-09-06 11:26 独行码夫 阅读(198) 评论(0) 推荐(0) 编辑