VxWorks には次のコードがあります。
sig_hdr () { ... }
task_low_priority() {
...
// Install signal handler for SIGUSR1
signal(SIGUSR1, sig_hdr);
...
}
task_high_priority() {
...
kill(pid, SIGUSR1); //pid is the ID of task_low_priority
...
}
優先度の高いタスクは、優先度の低いタスクに (kill を介して) シグナルを送信します。優先度の高いタスクがプリエンプトされ、優先度の低いタスクがすぐに実行されますか?それとも、優先度の低いタスクが実行されるまでシグナルが延期されますか?