我声明一个int值,该值尝试增加每次按钮单击的次数,但某些时间值不会增加,而某些时间在2或3次单击后会增加。我总是收到日志,因此单击事件没有问题,已经尝试过使用静态功能,但仍然无法使用。
SELECT * FROM Table_name
WHERE filed_name = 0 AND (field1 != '' AND field2 ='')
OR (field1 = '' AND field2 != '') AND filed3 = 1;
答案 0 :(得分:1)
能否请您告诉我为什么不使用静态值或仅将int无效?
由于Java内存模型。
如果一个线程写入一个变量,而另一个线程读取该变量,则保证的唯一方法是第二个线程看到第一个线程写入的值:
volatile
,AtomicInteger
。该变量应为final
。您需要阅读Oracle并发性教程,特别是有关同步的部分: