怎样使发生新的消息时原来的消息处理函数执行完毕(且新的消息得立即执行)
void OnEvnent()
{
HandleEvent();
}
void HandleEvent()
{
{
//处理A
}
{
//处理B
}
{
//处理C
}
}
OnEvent事件发生的很频繁,每发生该事件时立即调用HandleEvent
问题是:HandleEvent执行耗时较长,可能刚执行到处理B又有新的OnEvent事件发生,导致处理C不能每次都被执行
该怎么解决?[b][/b]
[解决办法]
多线程方式如何?
[解决办法]
你可以定义一个消息队列,按顺序执行消息;
[解决办法]
线程+消息队列
[解决办法]
同步(Synchronize)、事件(TEvent)、临界池(TCriticalSection)
[解决办法]
多线程
[解决办法]
多线程。。
[解决办法]
消息队列比较好