Python:队列.queue()设置尺寸的最佳实践?

2024-03-28 11:47:31 发布

您现在位置:Python中文网/ 问答频道 /正文

所以我有排队。排队()

我有很多制作人把工作投入其中排队。排队()和从队列中蹦出来的一群消费者

1)限制队列大小与不设置队列大小是否有好处?
2) 不封顶尺寸,真的没有任何尺寸限制吗?能长生不老吗?在

我注意到,当队列具有固定大小时,死锁似乎会更多地发生


Tags: 队列尺寸消费者排队小时封顶
1条回答
网友
1楼 · 发布于 2024-03-28 11:47:31

如果不限制大小,Queue可能会增长,直到内存耗尽。所以Python没有限制大小,但是您的机器仍然有有限的资源。在

在某些应用程序(可能是大多数)中,程序员知道内存消耗不会成为问题,因为它们的应用程序具有特定的特性。在

但是,例如,如果有“永远运行”的生产商,以及运行速度比生产商慢得多的消费者,那么限制大小对于避免无限制的内存需求至关重要。在

至于死锁,Queue的实现不太可能导致死锁,而不管{}的大小是否有界;死锁更可能是由于应用程序代码中的缺陷造成的。例如,想象一个通过网络获取内容的生产者,当网络连接断开时错误地抑制错误。然后生产商可能无法生产任何新产品,因此消费者最终将永远阻止等待新产品出现在Queue上。这“看起来像”死锁,但原因实际上与Queue无关。在

相关问题 更多 >