【发布时间】:2015-04-17 17:53:23
【问题描述】:
我需要编写执行多项任务的 python 脚本:
从控制台读取命令并通过
tcp/ip发送到服务器接收服务器响应,处理并输出到控制台。
创建这样一个脚本的最佳方法是什么?在与主线程中的用户交互时,我是否必须创建单独的线程来监听服务器响应?有什么好的例子吗?
【问题讨论】:
-
为什么需要两个线程?当上一个命令完成时,您是否关心来自服务器的消息?服务器是否关心用户在执行命令时输入的内容?我觉得这两项工作不需要同时进行
-
如何同时从控制台接收来自服务器和用户命令的消息?
-
你需要吗?服务器是否曾经发送过不响应命令的内容?它不能在命令和响应之间交替吗?即
while True: get_cmd(); send_to_server(); dispay_response() -
是的,有时服务器会发送一些不是之前用户输入的响应
-
你需要小心控制台 - 如果在用户键入命令的一半时服务器有输出要打印会发生什么?
标签: python multithreading tcpclient