(最新博彩娱乐网站大全) python消息队列服务退出的问题

最近用python处理一个消息队列的问题 所有功能都完善了 到现在还有一个没有解决的问题就是 当服务打开后 无法使用ctrl+c 或者发送结束的single结束 每次都要kill进程号才可以 不知道有没有更好的办法

消息队列结构代码如下:对线程其实还是有点迷糊的 指导下 谢谢。

#encoding=utf-8
import threading
import random
import time
from Queue import Queue class Producerthreading.Thread: def __init__self, threadname, queue: threading.Thread.__init__self, name = threadname self.sharedata = queue def runself: while True: for i in range20: print self.getName,adding,i,to queue self.sharedata.puti time.sleeprandom.randrange10/10.0 time.sleep8 print ======== NEW =========== print self.getName,Finished # Consumer thread class Consumerthreading.Thread: def __init__self, threadname, queue: threading.Thread.__init__self, name = threadname self.sharedata = queue def runself: while True: print self.getName,got a value:,self.sharedata.get time.sleeprandom.randrange10/10.0 print self.getName,Finished # Main thread def main: queue = Queue producer = ProducerProducer, queue consumer = ConsumerConsumer, queue print Starting threads ... producer.start consumer.start producer.join consumer.join print All threads have terminated.
if __name__ == __main__: main

http://docs.python.org/library/signal…

文档及大部分教程的方法是将线程设为后台线程setDaemonTrue,这样当队列为空时,没有线程join,就会自动退出

发表评论

电子邮件地址不会被公开。 必填项已用*标注