今回は処理を一時停止する方法として、sleep関数を紹介します。
sleep関数は、処理タイミングをずらしたときなど、実務でも非常に多く使用する関数です。
本記事を読んで、ぜひ理解していただければと思います!
スクロールできます
| 目的 | 講座名 | 到達点 | レベル/前提 | 想定時間 | こんな人に | 評価 |
|---|---|---|---|---|---|---|
| まずはC/C++を一気に俯瞰 | 一週間で身につくC/C++言語 | C/C++の基礎を通しで学び、ゲーム/組み込み/OS基礎にも触れる | 初心者〜初級 | 13時間 | C/C++をまとめて体験したい/ポインタでつまずいた経験がある | |
| 図解で“ゼロから”C言語 | イメージでわかる!基礎知識ゼロからのC言語。エンジニアが教えるC言語完全攻略コース。 | 図解中心で基礎→配列/構造体/ポインタまで。終盤はネットワーク等の応用も | 超初心者〜初級 | 7時間 | 活字が苦手/イメージで理解したい/まずはCだけに集中したい | |
| 図解+演習で基礎を速習 | 【C言語基礎マスター速習講座】知識ゼロからポインタまで完全習得!豊富な図解と演習問題で難しい概念も完全理解! | “動きの理解”重視でゼロ→ポインタまで。演習問題で定着 | 超初心者〜初級 | 16時間 | 図解多め+演習で短期に基礎固めしたい |
目次
sleep関数
処理を一時停止するには、
Unixの標準ライブラリのsleep関数を使用します。
インクルード方法とsleep関数は以下です。
#include <unistd.h>
unsigned int sleep(unsigned int seconds);sleep関数の引数は1秒単位で指定します。
sleep関数を使用したコード
実際にsleep関数をして処理を一時停止させたコードは以下です。
#include <unistd.h>
#include <stdio.h>
int main(){
sleep(1);
printf("1 秒スリープしました。\n");
return 0;
}実行結果は以下です。
1 秒スリープしました。1秒処理を停止しました
usleep関数
1秒より短い時間を一時停止したい場合は、usleep関数を使用します。
usleep関数の内容は以下です。
unsigned int usleep(unsigned int seconds);u sleep関数の引数は、マイクロ秒単位で指定します。
usleep関数を使用したコード
実際にusleep関数を使用して、1秒処理を一時停止させたコードは以下です。
#include <unistd.h>
#include <stdio.h>
int main(){
usleep(1 * 1000 * 1000);
printf("1 秒スリープしました。\n");
return 0;
}実行結果は以下です。
1 秒スリープしました。sleep関数を使用したときと同様な結果になりました。
まとめ
UNIXの標準ライブラリのsleep関数、u sleep関数を使用して、処理を一時停止できました。
これまで読んでくださりありがとうございます。

