gpt4 book ai didi

c - C中的usleep()是否实现为忙等待?

转载 作者:太空狗 更新时间:2023-10-29 16:37:11 26 4
gpt4 key购买 nike

我正在使用 pthreads 构建一个多线程应用程序,需要一个线程来定期检查一些东西。在此线程之间的时间不应使用任何 CPU。这可以用 usleep() 实现吗? usleep() 不是忙着等待吗?或者有更好的解决方案吗?

最佳答案

usleep 函数已从 SUSv4 中删除。您可能应该使用 nanosleep 或计时器(setitimer 等)。

正如 R.. 在评论中指出的那样,是否应该将 sleep 实现为忙等待:

  • 线程将继续使用 CPU
  • 其他(低优先级)线程不会有机会运行

因此:

  • 有些人可能会使用信号(我认为 SUSv3 提到了 SIGALARM?)
  • 有些人可能会使用花哨的计时器

关于c - C中的usleep()是否实现为忙等待?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8156603/

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