teratail header banner
teratail header banner
質問するログイン新規登録

回答編集履歴

1

言い回し修正

2019/12/03 02:21

投稿

rubato6809
rubato6809

スコア1382

answer CHANGED
@@ -5,7 +5,7 @@
5
5
  int kill(pid_t pid, int sig);
6
6
  ```
7
7
  親プロセスの fork() は子プロセスのプロセスIDを返します。そのまま kill() の引数にできるので、親は割と簡単です。注意すべきは子プロセスの方でしょう。
8
- - まず、**シグナルハンドラ関数**を用意します。この関数はシグナルが届いた時に呼ばれるようにしておき、その時点で**フラグ変数をセット**します。
8
+ - まず、**シグナルハンドラ関数**を用意します。この関数はシグナルを受けた時に呼ばれるので、その時点で**フラグ変数をセット**するようにします。
9
9
  - 無限ループは、単純に回っているのではなく、ループの最中に**フラグ変数をチェックしながら回る**ようにします。
10
10
  - シグナルを受けるには、**予めシグナルハンドラ関数を「登録」しておく**必要がありまして、そのための関数が signal() 関数です。関数ポインタを使うことになります。下の "handler" がそうです。
11
11