gpt4 book ai didi

c++ - 等待时间过去而不用在C窗口中忙着等待

转载 作者:可可西里 更新时间:2023-11-01 10:53:30 34 4
gpt4 key购买 nike

我有一个线程,它的工作是向 UDP 对等点发送消息。如果满足以下条件之一,线程将发送消息:

1) 自上次发送消息以来已经过了一定时间(如超时)。

2) 共享结构中的更新 bool 标志已被其他线程引发。

我希望能够等待这些条件发生,以便我知道何时发送消息。

我能做到的最简单的方法是制作一个重复的循环,直到满足其中一个条件。怕是忙着等待,会白白消耗大量CPU时间。我也不想使用 sleep()。

我不介意 C++ 解决方案,只要它易于理解和实现即可,因为我对 C++ 不是很熟悉。

谢谢!

最佳答案

对于 Windows,使用事件 (CreateEvent) 而不是 bool 值,然后在其上使用 WaitForSingleObject

关于c++ - 等待时间过去而不用在C窗口中忙着等待,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5716550/

34 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com