我有一个问题。我在这个聊天服务器上的制作人 - 消费者被卡住了。这就是它的作用:它让客户轮流发送他们的消息,当随机客户端(我的计算机内部)发送他的消息时,客户端之前尝试发送的所有消息都被发送。我找不到问题,也许有人可以发现它?
def run(self):
global condition
global messages
is_running = 1
while is_running:
print "waiting to receive from: " + self.usersock.getpname()
inp = self.sock.recv(8192)
condition.acquire()
parts = inp.split(':-:321')
if parts[0] == "4":
while not noMessagesToSend(messages):
condition.wait()
mes = message.message(str(datetime.datetime.now().time())[:8], self.usersock.id, parts[3],parts[4])
if not mes.getgroup() in messages.keys():
messages.update({mes.getgroup():[]})
messages[mes.getgroup()].append(mes)
condition.notifyAll()
condition.release()
else:
print parts