python - 有没有类似Python JoinableQueue的东西?

标签 python multithreading

我是Python的新手,正在寻找Python的JoinableQueue之类的东西,但这具有双端队列或类似堆栈的行为。具体来说,由于我要以不同的流程处理队列中的项目,因此我希望能够在队列中已有内容之前添加要处理的新项目(即,插入堆栈或添加到双端队列的前端) 。 Java的BlockingDeque确实可以满足我的要求,但是我不能真正将Java用于此项目。任何指针或新的方式来思考这个问题,将不胜感激!

最佳答案

使用multiprocessing,队列语义不仅是在进程间通信之上实现的,而且是它固有的。因此,最简单的解决方案可能是通过使用JoinableQueue来构建可连接堆栈,并通过首先将所有任务放入临时队列中,然后对新元素进行排队并从临时队列中填充任务来实现对堆栈的推送。从不同的进程插入堆栈将需要一些锁定以维持堆栈的顺序。

关于python - 有没有类似Python JoinableQueue的东西?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35542929/

相关文章:

python - 将 InitSpider 与启动画面 : only parsing the login page? 一起使用

c++ - 在新范围内使用 unique_lock 是否等同于在共享资源工作结束时解锁调用?

python - Kivy Gif 动画运行过于频繁

python - 关于python离散卷积的问题

python - 使用 PyMC3 进行多图像处理

python - Django:覆盖 AuthenticationForm 的表单字段是否正确?

ios - 有没有办法弄清楚 NSManagedObjectContext 在哪个线程上?

c++ - 如果只创建一次,使用数百个线程是否安全?

java - 如何在多线程应用程序中使用 Locale 来提高性能

java - 线程意外工作