我正在尝试用python实现消费者-生产者问题。。。我的一个问题是,我是否可以在类中创建一个类,并在外部范围中创建它的对象,如下面的代码所示。。。你知道吗
class Main(threading.Thread):
def __init__(self):
processNumber = 0
queue_size=5
self.mutexProducer=thread.allocate_lock()#mutex variablaes
self.mutexConsumer=thread.allocate_lock()
self.mutexTeller=thread.allocate_lock()
self.queue=Queue.Queue(maxsize=queue_size)
self.producer=Producer(processNumber,random.random())
class Producer(threading.Thread):
def __int__(self,ProducerID,serviceTime):
self.id=ProcucerID
self.serviceTime=serviceTime
def run(self):
#mutexProducer.acquire()
#Entering Critical section
print queue.qsize()
if queue.full():
sleep(random.random())
else:
print "Customer %d Enters the Queue" %(self.id)
app=Main()
我得到以下错误
Traceback (most recent call last): File "/Users/sohil/Desktop/sync.py", line 55, in app=Main() File "/Users/sohil/Desktop/sync.py", line 36, in init self.producer=Producer(processNumber,random.random()) NameError: global name 'Producer' is not defined
改变顺序。你知道吗
Python是一种从上到下执行的解释语言,因此任何依赖项都必须在顶部声明。你知道吗
相关问题 更多 >
编程相关推荐