我有幾個數據偵聽器,它們可能會同時接收大致的數據集。他們將使用其方法add()
迭代數據集並將數據存儲到相同的ArrayList
。這可能會導致一些數據項目未被存儲的任何問題?同時從幾種方法寫入同一個ArrayList
-1
A
回答
0
+0
任何類似的英文資源? – wilkas
2
ArrayList
是不同步的。從docs
請注意,此實現不同步。如果多個線程 同時訪問ArrayList實例,並且線程中至少有一個線程修改了列表的結構,它必須必須外部同步 。 (結構上的修改是指添加或 刪除一個或多個元件,或明確的任何操作調整大小背襯陣列; 僅僅設置元素的值不是結構 修改)
可以使用synchronizedList爲此
List list = Collections.synchronizedList(new ArrayList(...));
相關問題
- 1. 同時寫入,分成幾個文件,不同長度
- 2. 使用不同的方法寫入同一個文件
- 3. 如何在同一查詢中同時插入兩個Arraylist值
- 4. 簡單的方法用一種方法將3種不同類型的對象添加到一個ArrayList中?
- 5. 從不同的方法打印ArrayList
- 6. 對同一實例的幾種方法 - DRY
- 7. 從同一類別的另一種方法調用方法
- 8. 從同一類中的另一種方法調用方法
- 9. 需要一種使用RandomAccessFile從ArrayList存儲區寫入學生的方法
- 10. 有幾種方法可以查看幾個地標何時疊加在同一個位置上?
- 11. 同步一個ArrayList
- 12. 如何從另一種方法在同一.m文件調用一個方法
- 13. 幾個類共享的一種方法
- 14. 幾個按鈕的一種方法?
- 15. 多個打開同一個文件並同時寫入同一個文件PHP?
- 16. 將幾個線程同步寫入到java中的同一個文件中
- 17. 從一個網址或不同網址調用兩種方法
- 18. .NET BinaryWriter.Write()方法 - 同時寫入多個數據類型
- 19. 可以爲同一輸入寫幾個輸出嗎?
- 20. 重寫同樣的方法從兩次同一類
- 21. 使用一個代理來處理不同參數的幾種方法
- 22. 一種訪問方法迴應VARIANT或幾個返回不同類型?
- 23. 在一種方法中測試幾個不同結果的單元
- 24. 在同一類的幾種方法之間共享單個POSTGRESQL連接
- 25. 同時爲多個用戶同步ArrayList
- 26. TimePickerListener調用兩種方法同時
- 27. 如何在Java中同時訪問同一對象的兩種不同方法?
- 28. 爲從同一類調用方法的方法編寫測試
- 29. 兩個線程同時訪問同一個ArrayList?
- 30. 可以同時寫入/讀取同一個數據流嗎?
這些都在同一個線程?你是否刪除任何物品? – Unlocked
這一切都在Javadoc。 ['ArrayList''不同步。如果多個線程同時訪問一個ArrayList實例,並且至少有一個線程在結構上修改了這個列表,那麼它必須在外部進行同步。](https://docs.oracle.com/javase/8/docs/api/的java/UTIL/ArrayList.html)。 – EJP
這些是從幾個Firebase結果偵聽器更新的 - 我不確定它們是在UI還是單獨的線程上運行。不刪除任何項目。只是想加入結果,我通過使用幾種不同的過濾器。 – wilkas