簡體   English   中英

UI 線程綁定 AtomicInteger

[英]UI Thread Bound AtomicInteger

我一直在閱讀有關 SMP 機器(x86/ARM)和編譯器重新排序以提高效率的信息。 現在我想創建一個計數器,並且該變量作為 ActivityLifecycleCallbacks 實現的私有成員存在。 對這個變量的操作是在來自 Android 的回調上執行的(它總是在 UI 線程上)。

現在因為“x++”不是原子語句。 我需要使用 AtomicInteger 嗎? 即使變量總是只能在 UI 線程上訪問?

如果它只能由 UI 線程訪問,那么從技術上講,不,您不需要使用AtomicInteger 當我說訪問時,我的意思是讀取和寫入。

但是,考慮到您在並發架構下工作,使用並發對象(如AtomicInteger或更高性能的LongAdder )可能更安全。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM