tail head cat sleep
QR code linking to this page

manページ  — SIGSUSPEND

名称

sigsuspend – ブロックされているシグナルの解放と割込み待ちを不可分に実行

内容

ライブラリ

Standard C Library (libc, -lc)

書式

#include <signal.h>

int
sigsuspend(const sigset_t *sigmask);

解説

sigsuspend() システムコールは、 sigmask が指す集合に、ブロックされているシグナルマスクを一時的に変更してから、 シグナルの到着を待ちます。 復帰時に、マスクされたシグナルの前の集合が復元されます。 通常の場合、シグナルマスク集合は空で、呼び出しが続く間、 すべてのシグナルがブロックされないことを表わします。

通常の用法では、 sigprocmask(2) でシグナルをブロックして重要なセクションを始め、 シグナルの発生で修正された変数を調べて 実行すべき仕事がないことを判断し、 sigprocmask(2) が返した以前のマスクで sigsuspend() を使用することでプロセスが停止して仕事を待ちます。

戻り値

sigsuspend() システムコールは、常に割り込まれることで終了し、 errnoEINTR に設定し、-1 を返します。

関連項目

sigaction(2), sigpending(2), sigprocmask(2), sigsetops(3)

規格

sigsuspend() システムコールは、 IEEE Std 1003.1-90 ("POSIX.1") に適合しています。

SIGSUSPEND (2) May 16, 1995

tail head cat sleep
QR code linking to this page


このマニュアルページサービスについてのご意見は Ben Bullock にお知らせください。 Privacy policy.