ホームページ >Java >&#&チュートリアル >Collections.synchronizedList() を使用して Java で ArrayList をスレッドセーフにする方法
コード内の競合状態を軽減し、スレッドの安全性を確保するには、Collections.synchronizedList() メソッドの採用を検討してください。 。このメソッドは、既存の ArrayList を同期アクセスでラップし、その操作を簡単に保護します。
これを既存のコードに組み込む方法は次のとおりです。
<code class="java">public class Race implements RaceListener { private Thread[] racers; // Use Collections.synchronizedList() to make the ArrayList thread-safe private List<RaceCar> finishingOrder = Collections.synchronizedList(new ArrayList<>(numberOfRaceCars)); // ... Remaining code ... }</code>
Collections.synchronizedList() を利用することで、ArrayList 、finishingOrder は、同時アクセスから完全に保護されます。これにより、複数のスレッドがアクセスを競合したときに、要素の追加や削除などの操作が予期しない動作やデータ破損につながることがなくなります。
以上がCollections.synchronizedList() を使用して Java で ArrayList をスレッドセーフにする方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。