【发布时间】:2010-10-16 08:37:33
【问题描述】:
我正在尝试使用 Twisted python 编写一个简单的 TCPServer 和一个客户端。
一切运行良好;但是,有办法将某些任务推迟到不同的线程吗?例如,是否可以这样做:
- 从用户那里获取输入直到
\n,然后将数据发送到服务器; - 接受来自服务器的所有传入消息并写入屏幕;
同时?
哪些是最佳实践?
感谢您的帮助。
——多诺万
【问题讨论】:
标签: multithreading twisted tcpclient
我正在尝试使用 Twisted python 编写一个简单的 TCPServer 和一个客户端。
一切运行良好;但是,有办法将某些任务推迟到不同的线程吗?例如,是否可以这样做:
\n,然后将数据发送到服务器;同时?
哪些是最佳实践?
感谢您的帮助。
——多诺万
【问题讨论】:
标签: multithreading twisted tcpclient
线程是同时做这些事情的一种实现策略。 Twisted 通常采用另一种策略 - 非阻塞 I/O 和事件多路复用器(例如 select(2))。
如果您想在 TCPServer 运行时处理来自标准输入的输入,这意味着您想使用 Twisted 的 API 来读取标准输入,就像您使用 Twisted 的 API 来处理网络连接一样。
请参阅 twisted.internet.stdio.StandardIO。
【讨论】: