|
|
1
0
您可以在一组已确定的解决方案限制内描述问题。你的描述很复杂,很混乱,我敢说,很混乱。 为什么消费者只从共享缓冲区分发图像?为什么不允许每个所谓的“客户机”根据需要从缓冲区读取数据呢? 为什么不将共享缓冲区实现为单个图像缓冲区。制片人按其速度写作。客户端以自己的速率执行缓冲区的非破坏性读取。确保每个客户机每次读取缓冲区时都读取缓冲区中的最新图像。生产者只需在每次写入时重写缓冲区。 在这个应用程序中,多元素队列没有任何好处。事实上,正如您所描述的,它使解决方案非常复杂。 见 http://sworthodoxy.blogspot.com/2015/05/shared-resource-design-patterns.html 查找标题“无条件缓冲区”。 上面列出的示例都是使用Ada实现的,但是与并发设计模式相关的概念适用于所有支持并发的编程语言。 |
|
|
user107586 · 如何处理等待句柄不会导致无限循环? 10 月前 |
|
|
ron burgundy · 获取-释放语义是否跨线程传递?[副本] 10 月前 |
|
|
BenjiFB · C#内存缓存:在一次操作中追加到列表? 10 月前 |
|
|
András Takács · Python多线程问题 1 年前 |
|
|
András Takács · Python多线程错误 1 年前 |