首頁  >  文章  >  Java  >  如何確保 Java 中線程物件的 ArrayList 的線程安全?

如何確保 Java 中線程物件的 ArrayList 的線程安全?

Patricia Arquette
Patricia Arquette原創
2024-10-27 01:47:03460瀏覽

How Can You Ensure Thread-Safety for an ArrayList of Thread Objects in Java?

確保Java 中ArrayList 的線程安全

問題: 用於儲存Thread 物件的ArrayList (RaceCar )在賽車模擬中需要線程安全來維持完成者的正確順序。最初嘗試使用 Collections.synchronizedCollection() 同步 ArrayList 導致編譯器錯誤。

分析:
Collections.synchronizedCollection() 只能同步非 List Collection 實作。若要專門同步 ArrayList,請使用 Collections.synchronizedList()。

解決方案:

<code class="java">finishingOrder = Collections.synchronizedList(new ArrayList<>(numberOfRaceCars));</code>

此程式碼正確建立了一個線程安全的 ArrayList 來儲存 RaceCar 物件並維持完賽者的秩序。

以上是如何確保 Java 中線程物件的 ArrayList 的線程安全?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn