等待C中的通知
作者:互联网
与C没有严格关联,我正在寻找更多关于如何处理这个问题的设计模式或建议.
说我有
class A
{
public:
void process();
void wait();
}
我将首先调用process(),其中(duuh)执行一些处理,然后调用wait(). wait()函数应该等待通知然后退出.我已经在单独的线程上有通知的逻辑,但我不确定最好的方法是什么.
我想到的是:
void A::wait()
{
while ( _notificationOccured == false )
{
}
}
其中_notificationOccured可以是A的bool成员,将由通知更改.但是,再次,我不确定这是最好的方法.有什么建议?
解决方法:
池化变量会产生糟糕的性能,因为池化线程几乎占用了所有CPU时间.您需要使用事件或消息 – 这些内容是特定于平台的.您可以使用一些可移植库,例如Boost.
标签:c,language-agnostic,design-patterns,notifications,wait 来源: https://codeday.me/bug/20190902/1793959.html