溫馨提示×

C語言中usleep與nanosleep函數怎么使用

小億
173
2023-08-02 14:52:26
欄目: 編程語言

在C語言中,usleep和nanosleep函數用于暫停程序的執行一段時間。

  1. usleep函數的使用:
#include <unistd.h>
int usleep(useconds_t microseconds);

usleep函數會使程序暫停執行指定的微秒數。參數microseconds指定了暫停的時間,單位是微秒(百萬分之一秒)。

示例:

#include <stdio.h>
#include <unistd.h>
int main() {
printf("Before usleep\n");
usleep(2000000);  // 暫停2秒
printf("After usleep\n");
return 0;
}

輸出:

Before usleep
[等待2秒]
After usleep
  1. nanosleep函數的使用:
#include <time.h>
int nanosleep(const struct timespec *req, struct timespec *rem);

nanosleep函數會使程序暫停執行指定的納秒數。參數req是一個指向timespec結構體的指針,用來指定暫停的時間。參數rem是一個指向timespec結構體的指針,用來獲取未完成的暫停時間。

示例:

#include <stdio.h>
#include <time.h>
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

0
亚洲午夜精品一区二区_中文无码日韩欧免_久久香蕉精品视频_欧美主播一区二区三区美女