gpt4 book ai didi

java - 两个队列和不同的线程

转载 作者:行者123 更新时间:2023-11-29 04:25:31 25 4
gpt4 key购买 nike

我有 2 个队列 A 和 B。主线程负责填充队列。有一个由 3 个线程组成的线程池,负责从队列中读取数据。两个队列都是 ArrayBlockingQueue。假设主线程以这种方式填充队列 (A1,B1),(A2,B2),(A3,B3),(A4,B4) 等等。 A1 和 B1 共同组成一个整体数据。任何线程是否有可能在任何时候读取 (A3,B4) 之类的数据。如果是,那我该如何避免呢。我希望每个线程都读取数据。例如 thread1 应该同时读取 (A1,B1) 和 thread2 (A2,B2) 等等。

最佳答案

通常,答案是:取决于

当然,您可以按照概述的方法实现一些最终“正确”的方法。但是:到达那里将困难

一种更直接的方法:修复损坏的设计。如果两个队列中的两个条目一起有意义 - 然后创建一个围绕一个 A 和一个 B 的类 - 并将这些对象放入一个单个队列中。

关于java - 两个队列和不同的线程,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46563864/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com