首页  >  文章  >  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