名 前
sigpending − 処 理 待 ち の シ グ ナ ル の 検 査
書 式
#include <signal.h>
int sigpending(sigset_t *set);
glibc 向 け の 機 能 検 査 マ ク ロ の 要 件 (feature_test_macros(7) 参 照 ):
sigpending(): _POSIX_C_SOURCE >= 1 || _XOPEN_SOURCE || _POSIX_SOURCE
説 明
sigpending() は 、 呼 び 出 し 元 の ス レ ッ ド へ の 配 送 を 待 っ て い る (pending) シ グ ナ ル 集 合 (す な わ ち 、 禁 止 中 に 発 生 し た シ グ ナ ル ) を 返 す 。 処 理 待 ち の シ グ ナ ル の マ ス ク が set に 格 納 さ れ る 。
返 り 値
sigpending() は 成 功 し た 場 合 0 を 返 す 。 エ ラ ー の 場 合 、 −1 を 返 し 、 errno に エ ラ ー の 原 因 を 示 す 値 を 設 定 す る 。
エ ラ ー
EFAULT |
set が 指 し て い る メ モ リ ー が 、 プ ロ セ ス の ア ド レ ス 空 間 の 有 効 な 部 分 で は な い 。 |
準 拠
POSIX.1−2001.
注 意
シ グ ナ ル 集 合 の 操 作 に 関 す る 詳 細 は sigsetops(3) を 参 照 の こ と 。 シ グ ナ ル が 禁 止 (ブ ロ ッ ク ) さ れ て お り 、 か つ 配 送 方 法 が "ignored" (無 視 ) に な っ て い る 場 合 、 そ の シ グ ナ ル が 発 生 し た 場 合 に 処 理 待 ち シ グ ナ ル の マ ス ク に そ の シ グ ナ ル は 追 加 さ れ な い 。 あ る ス レ ッ ド に 対 す る 処 理 待 ち の シ グ ナ ル の 集 合 は 、 そ の ス レ ッ ド 自 体 へ の 処 理 待 ち の シ グ ナ ル 集 合 と 、 プ ロ セ ス 全 体 へ の 処 理 待 ち の シ グ ナ ル 集 合 を あ わ せ た も の で あ る 。 signal(7) 参 照 。
fork(2) 経 由 で 作 成 さ れ た 子 プ ロ セ ス で は 、 処 理 待 ち の シ グ ナ ル 集 合 は 空 の 集 合 で 初 期 化 さ れ る 。 execve(2) の 前 後 で 、 処 理 待 ち の シ グ ナ ル 集 合 は 保 持 さ れ る 。
バ グ
バ ー ジ ョ ン 2.2.1 以 前 の glibc で は 、 sigpending() の ラ ッ パ ー 関 数 に 、 処 理 待 ち の リ ア ル タ イ ム シ グ ナ ル に 関 す る 情 報 が 正 し く 返 さ れ な い と い う バ グ が あ る 。
関 連 項 目
kill(2), sigaction(2), signal(2), sigprocmask(2), sigsuspend(2), sigsetops(3), signal(7)
こ の 文 書 に つ い て
こ の man ペ ー ジ は Linux man−pages プ ロ ジ ェ ク ト の リ リ ー ス 3.79 の 一 部 で あ る 。 プ ロ ジ ェ ク ト の 説 明 と バ グ 報 告 に 関 す る 情 報 は http://www.kernel.org/doc/man−pages/ に 書 か れ て い る 。