|
|
1
3
这听起来像是典型的消费者-生产者问题。看看 Wikipedia's article 关于它。那里有大量的伪代码。 |
|
|
2
0
除了使用
producer-consumer pattern
有人建议,我建议你使用
CopyOnWriteArrayList
因此,您可以对列表进行无锁读/写/迭代。因为您只处理几百个字符串,所以可能不会有任何性能问题
如果你关心性能,那么我实际上认为如果你使用 BlockingQueue 或者 ConcurrentHashMap 。它们将使多线程应用程序的吞吐量最大化。
建议的选项是:
我认为维基百科的文章有足够的伪代码供您使用,但您也可以查看以下一些问题:
Java生产者消费者设计:
|
|
|
ron burgundy · 获取-释放语义是否跨线程传递?[副本] 1 年前 |
|
|
H3007 · 并发运行python子进程似乎不是并发的 2 年前 |
|
|
The Oddler · TVar会阻止读取直到更改吗? 2 年前 |
|
|
Wang Tuma · 使用信号量的c++并发问题:按顺序打印 2 年前 |
|
|
Marcel Batista · 在不同线程中更新密钥时的字典线程安全 2 年前 |
|
|
rico · 当volatile关键字真的是必要的? 2 年前 |