编辑:这个问题肯定需要更多信息...
我的代码启动了几个这样的过程:
semaphore = threading.BoundedSemaphore(5)
当“信号量”为“无”时,即使有大量并发进程,一切也能正常工作。
但是当“信号量”具有值时:
%VARIABLE:*search:replac%
有时子进程永远不会启动。尽管process.is_alive()返回true,但do_stuff不会执行任何操作。
有什么想法吗?这里发生了什么事?
注意do_stuff不检查信号量。所以它不会因信号量上的“红灯”而挂起。
代码在Ubuntu 14.04.4 LTS和python 2.7上运行