当前位置: 代码迷 >> J2SE >> 为啥简单变量不能放在synchronized括号中
  详细解决方案

为啥简单变量不能放在synchronized括号中

热度:69   发布时间:2016-04-23 20:41:25.0
为何简单变量不能放在synchronized括号中?
int n=0;
由于n++并不是原子操作,所以偶想将n放入括号中

synchronized(n)  {n++;}

好像不允许这样,请高手解释一下,谢谢!


------解决方案--------------------
加锁的目标是对象,基础类型不是对象所以不能加锁
------解决方案--------------------
n++以后n不是原来的对象了,锁不住
------解决方案--------------------
因为是基本类型
  相关解决方案