现在的情况是这样的:
做完一件事情,有两个步骤, A 和 B, B 需要在 A 完成后才能执行。
目前步骤A消耗系统资源较少,所以希望有 X 大小的线程池。
而步骤B消耗系统资源较多,因此只有 Y 大小的线程池。
而类似的事情有很多件,目前只用线程池的时候, 需要等到所有的步骤A结束才能做B步骤。
有没有现成的线程池 + 生产者、消费者结合起来的模块?来满足不同步骤使用不同大小的线程池?
1
googlebot 2015-03-08 13:59:52 +08:00
gevent?
|
2
monnand 2015-03-08 14:06:31 +08:00
不知道你用的是哪个python解释器/虚拟机,如果是CPython,那么使用线程之前,最好考虑一下[GIL](https://wiki.python.org/moin/GlobalInterpreterLock)的问题。
至于你的问题,可以考虑[asyncio](https://docs.python.org/3/library/asyncio-task.html)。另外,也可以考虑[stackless python](http://www.stackless.com/)。细节就参考链接里的内容吧,我就不罗嗦了。 |
3
dingyaguang117 2015-03-08 14:26:51 +08:00 1
|
4
GeekGao 2015-03-08 20:37:23 +08:00
gevent
|