【python】客户端怎么做到UI界面和监听程序交互且独立运行?

yunbiquan 2013-10-14 01:47:27
写了个简单的客户端程序,当连接上server的时候调用UI界面。并通过UI界面输入输出信息。
问题是:网络监听模块是一个无限循环,UI界面也是个无限循环,当调用UI程序后,网络监听模块剩下的代码好像不执行了,因为UI程序无限循环了。怎么才能做到连着互不干扰呢?
刚看到多线程,试着用了下,也不行,可能多线程看得太浅了,应该怎么做?
def buildProtocol(self, addr):
print 'Connected.'
t.start()
return Echo1()
这段代码,t.start()开始子线程,里面有调出UI界面的操作。但return Echo1()不执行了,怎么办?
...全文
511 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
yunbiquan 2013-10-15
  • 打赏
  • 举报
回复
引用 2 楼 angel_su 的回复:
貌似UI为主线程为妥,再起监听线程顺便传入窗口相关参数,然后发消息给UI更新界面...
今天找了一下午,发现qt4reactor可以实现twisted和QT GUI的结合,使得两者并行。 确实以UI为主线为妥。
angel_su 2013-10-14
  • 打赏
  • 举报
回复
貌似UI为主线程为妥,再起监听线程顺便传入窗口相关参数,然后发消息给UI更新界面...
maniachhz 2013-10-14
  • 打赏
  • 举报
回复
线程 return Echo1()后面应该不执行, t.start()运行过程得到的数据,可以通过signal-slot机制来获取. 我现在也是菜鸟,学习中.

37,719

社区成员

发帖
与我相关
我的任务
社区描述
JavaScript,VBScript,AngleScript,ActionScript,Shell,Perl,Ruby,Lua,Tcl,Scala,MaxScript 等脚本语言交流。
社区管理员
  • 脚本语言(Perl/Python)社区
  • IT.BOB
加入社区
  • 近7日
  • 近30日
  • 至今

试试用AI创作助手写篇文章吧