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。
