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