如何再minigui 中进行线程间通信
各位大侠,我现在遇到一个问题,就是我现在想用minigui编写一个显示界面,计划采用多线程的方式设计系统,分为应用程序线程和显示线程,当应用程序中有事件触发时,就是,当我系统中判断当前满足显示条件的时候,进行显示输出,现在的问题是,当我的应用程序判断出需要现实的时候,如何通知显示线程,之前试了两种方案没有成功,分别为:
1.由于采用线程的方式,所有的程序都运行在同一个地址空间,于是在应用程序中改变显示线程中显示的消息内容,在显示线程中,打印出来的信息是改变了,但是未能改变现实消息的内容,能不能告诉我,这是为什么?不能这样做吗?(我现在得出的结论是不能,但不知道为什么)
2.由于看到原先里面使用消息触发的,当控件被触发的时候,会像处理函数发送消息,处理函数在进行相应的处理然后输出,我试着通过往HWND_DESKTOP发送MSG_COMMAND,j结果程序没能正确接受,后来自己定义了消息#define MSG_ALARM (MSG_USER+1) ,然后往HWND_DESKTOP发送MSG_ALARM ,还是不能正确接收,这是为什么?不能这样做吗?(我现在得出的结论是不能,但不知道为什么)
或者如果我以上两个思路完全错误的话,能不能告诉我正确方法?!
万分感谢
[ 本帖最后由 qiuyu00 于 2008-9-6 16:46 编辑 ]
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
问题已解决,有一个定义重复了,那个hMainWnd之前定义成了全局变量,后来又定义了一个局部变量,导致在对数据类型进行改变的时候没变成,之前大意了
各位大虾,是不是我的问题太基础了?我试刚学,望大家指教