我今天在写代码的时候遇到一个很奇怪的问题。
//大致代码
void run( ){
while(true){
//system.out.print( " ...");//但注释掉这句话,线程即使 size!=0,也不会执行里面的句子。
if(list.size()!=0){//一个集合,我在其它线程添加数据使size!=0,
.........
}
}
}
百度后,才知道,是 原子操作的问题,要使if()中的变量为volatile属性,即时刷新,
具体原因我也不太清除,只是把问题列出来,
Java的有些问题,真是,让人觉得匪夷所思。