在C语言中,usleep和nanosleep函数用于暂停程序的执行一段时间。
- usleep函数的使用:
#includeint usleep(useconds_t microseconds);
usleep函数会使程序暂停执行指定的微秒数。参数microseconds指定了暂停的时间,单位是微秒(百万分之一秒)。
示例:
#include#include int main() { printf("Before usleep\n"); usleep(2000000); // 暂停2秒 printf("After usleep\n"); return 0; }
输出:
Before usleep [等待2秒] After usleep
- nanosleep函数的使用:
#includeint nanosleep(const struct timespec *req, struct timespec *rem);
nanosleep函数会使程序暂停执行指定的纳秒数。参数req是一个指向timespec结构体的指针,用来指定暂停的时间。参数rem是一个指向timespec结构体的指针,用来获取未完成的暂停时间。
示例:
#include#include int main() { printf("Before nanosleep\n"); struct timespec req; req.tv_sec = 2; // 2秒 req.tv_nsec = 0; // 0纳秒 nanosleep(&req, NULL); // 暂停2秒 printf("After nanosleep\n"); return 0; }
输出:
Before nanosleep [等待2秒] After nanosleep