gpt4 book ai didi

c++ - MacOS 中是否有针对 "struct timeval"的 nanosleep 函数?

转载 作者:塔克拉玛干 更新时间:2023-11-03 02:22:11 24 4
gpt4 key购买 nike

我在 MacOS (OS X El Capitan 10.11.2) 中记录时间间隔(至少以毫秒为单位)时遇到问题。

显然,基本思想是记录两次时间并进行减法。当我发现“sys/time.h”中有 gettimeofday() 和这个函数的结构 - struct timeval 时,问题就发生了。然后拿到时间间隔,想让它按照时间间隔休眠。但是,似乎 nanosleep() 或 usleep() 没有时间类型的参数(忽略 sleep() ,因为我至少需要毫秒)。

我应该转换 timeval 以适应 nanosleep() 或 usleep() 还是有更好更简单的方法?

最佳答案

此示例使用 selecttimeval 值上休眠(此处为 10 秒):

#include <stdio.h>
#include <unistd.h>
#include <sys/time.h>
#include <sys/select.h>

int main(void)
{
printf("start...\n");
struct timeval tv = {10, 0};
select(0, NULL, NULL, NULL, &tv);
printf("done!\n");
return 0;
}

关于c++ - MacOS 中是否有针对 "struct timeval"的 nanosleep 函数?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34755730/

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