我正在关注有关客户端/服务器的官方 Twisted示例。我正在使用LineReceiver.sendLine()将文本从客户端发送到服务器。此代码有效:
def connectionMade(self):
self.sendLine("Hello, world!")
我可以在我的服务器端看到它。但是如果我添加这样的东西:
def connectionMade(self):
while self.running:
command = raw_input(">>")
if command=="disconnect":
self.running = False
else:
print "sending..."
self.sendLine(command)
print "sent."
self.sendLine("Hello, world!")
我可以看到“正在发送... ”和“已发送”,但仅此而已。即使客户端似乎正在发送数据,服务器也没有收到任何信息。如果我输入“断开连接”,所有内容都会立即发送,包括“你好,世界!'
因此我的问题是:实际发送发生在哪里?以及如何实现上述目标?