首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > C语言 >

讯息循环的处理

2012-09-28 
消息循环的处理?若有一个循环负责接收各种类型的消息,一般这应该是个死循环,因为对消息的到来时刻是不清楚

消息循环的处理?
若有一个循环负责接收各种类型的消息,一般这应该是个死循环,因为对消息的到来时刻是不清楚的,所以一般会开一个线程,那么有怎样的解决方案去让特定的消息绑定到特定的对象上,比如窗口,控件等。
要求:最好提供C、C++的解决思路或编码。不要使用windows的消息映射机制。

[解决办法]
参考:windows的消息队列
[解决办法]
如果不是跨进程共享消息,用简单的Map<窗口ID,List<消息>>就可以实现线程间的消息共享,不同窗口的线程去找中属于自己的消息List即可。

如果是跨进程的消息共享,windows下建议使用共享内存,存储对象结构和前面相同。linux/unix下则可以考虑共享内存或者消息队列。实现方式大体相同,只是锁机制不一样。
[解决办法]
那你就用waitForSingleObject等待事件,在不同的地方触发不同的事件,处理不同的事情。有点类似于中断处理
[解决办法]
你不把消息发给 控件,,, 他们也没办法获得消息啊?
[解决办法]
《深入浅出MFC》

热点排行