anjuta下编程C/S通信

开发基于GTK+或QT的应用程序
回复
weihua2008
帖子: 448
注册时间: 2008-07-10 15:08
送出感谢: 0
接收感谢: 0
联系:

anjuta下编程C/S通信

#1

帖子 weihua2008 » 2008-10-16 10:21

有两个窗口,一个是连接窗口,一个是对话窗口(类似qq聊天的对话窗口)
当连接成功要打开对话窗口,打开对话窗口的同时要启动一个接收数据的函数,随时等待并接收另一端发送过来的数据,想问接收数据的函数应该与哪个窗口 的哪个信号link哪?
如下图:
附件
Screenshot-1.png
Screenshot.png
头像
tipfoo
帖子: 303
注册时间: 2007-07-12 16:30
来自: 桂林
送出感谢: 0
接收感谢: 2 次

Re: anjuta下编程C/S通信

#2

帖子 tipfoo » 2008-10-16 15:40

weihua2008 写了:有两个窗口,一个是连接窗口,一个是对话窗口(类似qq聊天的对话窗口)
当连接成功要打开对话窗口,打开对话窗口的同时要启动一个接收数据的函数,随时等待并接收另一端发送过来的数据,想问接收数据的函数应该与哪个窗口 的哪个信号link哪?
看来要用到多线程(或多进程)设计技术。给个思路,仅供参考:
1. 在“对话窗口“显示前,创建一个工作者线程(通常有几个“对话窗口“就建几个线程)。在该线程中调用接收数据的函数,随时等待并接收另一端发送过来的数据。
2. 当工作者线程收到数据后,发送自定义的信号给对应的“对话窗口”,由“对话窗口”中的回调函数处理收到的信息/数据(比如显示等)。

建议先弄懂“多线程、共享锁等技术“和”窗体如何发送/接收自定义消息“这方面的知识。
接下来就自己努力吧……
回复

回到 “GTK+和QT”