Linuxアラーム機能の紹介 上記のコード: #include <stdio.h> #include <unistd.h> #include <stdlib.h> #include <signal.h> int main(int argc, char *argv[]) { 警報(5); 睡眠(20); printf("終了!\n"); 0を返します。 } 5 秒間実行した後、カーネルはプロセスに
もちろん、次のように信号処理関数を手動で定義することもできます。 #include <stdio.h> #include <unistd.h> #include <stdlib.h> #include <signal.h> void sig_alarm(int sig) { printf("sig は %d です、sig_alarm が呼び出されました\n", sig); } int main(int argc, char *argv[]) { signal(SIGALRM, sig_alarm); // アラーム信号に対応する関数を登録します。alarm(5); // 5秒後、カーネルはプロセスにアラーム信号を送信し、対応するシグナル登録関数を実行します。sleep(20); printf("終了!\n"); 0を返します。 } 結果:
カーネルは、プロセスを強制終了する代わりに、アプリケーション プロセスに SIGALRM シグナルを送信し、対応する登録関数を実行していることがわかります。 とても簡単です。今のところ私が言いたいのはこれだけです。 要約する 以上がこの記事の全内容です。この記事の内容が皆様の勉強や仕事に何らかの参考学習価値をもたらすことを願います。123WORDPRESS.COM をご愛顧いただき、誠にありがとうございます。これについてもっと知りたい場合は、次のリンクをご覧ください。 以下もご興味があるかもしれません:
|
<<: Mac での MySQL と Squel Pro の設定
目次1. プロトタイプチェーン継承2. コンストラクタによる継承3. 組み合わせ継承4. プロトタイ...
MySQL には多くのデータベース管理ツールがあります。作業効率の向上に役立つ優れた GUI ツール...
目次プレゼンテーション層ビジネスレイヤーコアプラグイン xlsx ExcelインポートExcelエク...
純粋なCSS3で蝶が羽ばたく様子を再現。まずはその効果をご覧ください どうですか?効果はかなりいいで...
1. 中国語入力方法を設定する 2. ダブルスペルモードを設定する 3. 注意事項20.04 で S...
最近、次のデータ型のデータベースに遭遇しました:decimal(14,4)発生した問題は次のとおりで...
目次01 k8sの一般的なコントローラーRCコントローラーデプロイメント コントローラーステートフル...
勉強中に読んだ本についてもよく聞かれます。以下は初心者におすすめの本です(私が勉強中に読んだ本です。...
主に2つの側面から: 1. ハイライト/改行2. コードのコピーボタンこれら両方には既製のプラグイン...
MySQL binlog は MySQL ログの中で非常に重要なログであり、データベースのすべての ...
UPDATE はロックしますか?以下のような場合、SQL文はロックされますか? テーブル1を更新しま...
目次1. 双方向データバインディングとは1. データの双方向バインディングを実装する必要があるのはな...
この記事では、WeChatアプレットがSMS認証コードのカウントダウンを送信するための具体的なコード...
エディターは 2 つのカテゴリに分かれていると思います。1 つは、即時レンダリングを実現するために左...
ユーザーがログアウトした後、ブラウザの戻るボタンがクリックされると、Web アプリケーションは保護さ...