C++ Windows API“;国际象棋计时器“;Sepmaphore事件

C++ Windows API“;国际象棋计时器“;Sepmaphore事件,c++,events,semaphore,C++,Events,Semaphore,有没有一个像象棋计时器一样工作的信号机,意思是 线程A完成它的任务,循环回到顶端并调用信号量 这将触发线程2,线程2继续执行其代码,循环返回顶部并调用信号量 这会触发一个线程,该线程 所以信号量既是阻塞又是信令 我知道我可以只使用两个事件和WaitForSingleObject,但我想知道是否有一个信号量专门做到这一点 在这个主题上,事件的“昂贵”程度如何,WaitForSingleObject()在内存和CPU方面的“昂贵”程度如何。。。你确定你需要两个线程吗?听起来你的合作程序不能同时运行,

有没有一个像象棋计时器一样工作的信号机,意思是

线程A完成它的任务,循环回到顶端并调用信号量

这将触发线程2,线程2继续执行其代码,循环返回顶部并调用信号量

这会触发一个线程,该线程

所以信号量既是阻塞又是信令

我知道我可以只使用两个事件和WaitForSingleObject,但我想知道是否有一个信号量专门做到这一点


在这个主题上,事件的“昂贵”程度如何,WaitForSingleObject()在内存和CPU方面的“昂贵”程度如何。。。你确定你需要两个线程吗?听起来你的合作程序不能同时运行,至少如果我理解这个比喻的话。如果是这样,就把它们放在同一个线程中

while (true)
{
    task1();
    task2();
}

嗯。。。你确定你需要两个线程吗?听起来你的合作程序不能同时运行,至少如果我理解这个比喻的话。如果是这样,就把它们放在同一个线程中

while (true)
{
    task1();
    task2();
}

没有长篇大论的解释,它们就不能同时运行。没有长篇大论的解释,它们就不能同时运行。