C语言中nanosleep函数的用法是什么

nanosleep函数用于将当前线程挂起一段指定的时间。
其用法如下:

#include <time.h>
int nanosleep(const struct timespec *req, struct timespec *rem);

参数说明:

req:指定挂起的时间长度,以纳秒为单位。要挂起的时间长度由结构timespec表示,其中成员tv_sec表示秒数,tv_nsec表示纳秒数。
rem:如果挂起被其它信号中断,函数调用结束时,将返回未挂起的时间长度。这个参数可以为NULL。

返回值:

如果挂起时间达到指定的时间长度,则返回0;
如果挂起被其它信号中断,返回剩余的时间长度;
如果发生错误,返回-1,并设置errno变量来指明错误原因。

注意:

nanosleep函数是相对精确的,但精确性取决于系统的时钟分辨率。
req参数指定的时间长度必须是正数,否则nanosleep函数将返回EINVAL错误。
rem参数不是必须的,如果不需要获取剩余时间,则可以将其设置为NULL。

阅读剩余
THE END