【发布时间】:2023-04-04 23:38:02
【问题描述】:
我有一个简单的多线程问题(在 Java 中)。我有 2 组 4 个非常大的数组,我有 4 个线程,组中的每个数组都有 1 个线程。我希望线程并行检查两组是否具有相同的值。如果其中一个数组中的一个值与另一个数组中的相应索引值不匹配,则这两个集合不相同,所有线程都应该停止他们正在做的事情并继续下一组 4 个非常大的数组.这个过程一直持续到所有的数组集合对都被比较并被认为相等或不相等。当其中一个线程发现不匹配时,我希望所有线程都停止。实现这一点的正确方法是什么?
【问题讨论】:
-
请记住,我想要最有效的解决方案。我希望在最短的时间内将所有数组集合对相互比较。
-
它们必须是数组吗?我可以想象有一些方法可以索引数组以加快比较速度。
-
另外,注意数组中的元素不是 volatile stackoverflow.com/questions/2236184/…
标签: java arrays multithreading events concurrency