UI线程绑定的AtomicInteger

时间:2019-12-04 16:24:22

标签: android multithreading atomic smp atomicinteger

我一直在阅读有关SMP机器(x86 / ARM)和编译器重新排序以提高效率的信息。现在,我想做一个计数器,该变量作为ActivityLifecycleCallbacks实现的私有成员存在。此变量的操作是在Android的回调中执行的(始终在UI线程中)。

现在,因为“ x ++”不是原子语句。我需要使用AtomicInteger吗?即使变量始终仅在UI线程上访问?

1 个答案:

答案 0 :(得分:-1)

如果仅由UI线程访问过,那么从技术上讲,没有,您不需要使用AtomicInteger。当我说访问时,我的意思是读和写。

但是,考虑到您在并发架构下工作,仅使用AtomicInteger或性能更高的LongAdder之类的并发对象可能更安全。