mark

#!/usr/bin/python
import Queue
import time
import threading

q=Queue.Queue()

class producer(threading.Thread):
def init(self,i):
threading.Thread.init(self,name=“producer Thread-%d” % i)
def run(self):
global q
count=9
while True:
for i in range(3):
if q.qsize() > 12:
pass
else:
count=count+1
msg=str(count)
q.put(msg)
print self.name+’ ‘+‘producer’+msg+’ '+‘Queue Size:’+str(q.qsize())

        time.sleep(2)

class consumer(threading.Thread):
def init(self,i):
threading.Thread.init(self,name=“consumer Thread-%d” % i)
def run(self):
global q
while True:
for i in range(3):
if q.qsize() < 1:
pass
else:
msg=q.get()
print self.name+’ ‘+‘consumer’+msg+’ '+‘Queue Size:’+str(q.qsize())
time.sleep(2)

def test():
for i in range(10):
q.put(str(i))
print 'Init producer '+str(i)
for i in range(2):
p=producer(i)
p.start()
for i in range(3):
c=consumer(i)
c.start()

if name == ‘main’:
test()

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章