版權所有 © 2014 tutorialspoint
int nanosleep(const struct timespec *req, struct timespec *rem);
timespec結構用於指定具有納秒精度的間隔時間。它在<time.h>中指定,其形式為:
struct timespec { time_t tv_sec; /* seconds */ long tv_nsec; /* nanoseconds */ };
納秒欄位的值必須在 0 到 999999999 範圍內。
與sleep(3) 和usleep(3) 相比,nanosleep() 的優勢在於它不會影響任何訊號,它符合 POSIX 標準,它提供更高的計時解析度,並且它允許更容易地繼續被訊號中斷的睡眠。
在 Linux 2.4 中,如果nanosleep() 被訊號(例如,SIGTSTP)停止,則在程序被 SIGCONT 訊號恢復後,呼叫將返回錯誤EINTR。如果隨後重新啟動系統呼叫,則程序在停止狀態下花費的時間將不計入睡眠間隔。
sched_setscheduler (2)
timer_create (2)
廣告