C言語 sleep/usleep/nanosleep関数: 休眠の基本と使い分け
C言語では、休眠機能を実現するために以下の関数を使用することができます。
- 眠る (ねむる)
 
#include <unistd.h>
int main() {
    printf("Sleeping for 3 seconds...\n");
    sleep(3);
    printf("Awake now!\n");
    return 0;
}
- 一瞬休む
 
#include <unistd.h>
int main() {
    printf("Sleeping for 500 milliseconds...\n");
    usleep(500000);
    printf("Awake now!\n");
    return 0;
}
- nanosleep – ナノスリープ
 - 時間指定
 
#include <time.h>
int main() {
    struct timespec ts = {2, 500000000}; // 2.5秒
    printf("Sleeping for 2.5 seconds...\n");
    nanosleep(&ts, NULL);
    printf("Awake now!\n");
    return 0;
}
上記の関数を使用する際には、適切なヘッダーファイルを含める必要があり、パラメータの単位と精度に注意する必要があります。