sigsuspend

Autres langues

Langue: ja

Version: 2005-09-15 (openSuse - 09/10/07)

Section: 2 (Appels système)

̾Á°

sigsuspend - ¥·¥°¥Ê¥ë¤òÂÔ¤Ä

½ñ¼°

#include <signal.h>

int sigsuspend(const sigset_t *mask);

ÀâÌÀ

sigsuspend() ¤Ï¡¢¸Æ¤Ó½Ð¤·¸µ¥×¥í¥»¥¹¤Î¥·¥°¥Ê¥ë¥Þ¥¹¥¯¤ò mask ¤Ç»ØÄꤵ¤ì¤¿¥Þ¥¹¥¯¤Ë°ì»þŪ¤ËÃÖ¤­´¹¤¨¡¢ ¥·¥°¥Ê¥ë¥Ï¥ó¥É¥é¤Îµ¯Æ°¤â¤·¤¯¤Ï¥×¥í¥»¥¹¤Î½ªÎ»¤¬¥¢¥¯¥·¥ç¥ó¤È¤·¤Æ ÀßÄꤵ¤ì¤¿¥·¥°¥Ê¥ë¤¬ÇÛÁ÷¤µ¤ì¤ë¤Þ¤Ç¡¢¤½¤Î¥×¥í¥»¥¹¤òÄä»ß¤¹¤ë¡£

¥·¥°¥Ê¥ë¤¬¥×¥í¥»¥¹¤ò½ªÎ»¤µ¤»¤ë¤â¤Î¤Î¾ì¹ç¡¢ sigsuspend() ¤ÏÊÖ¤é¤Ê¤¤¡£¥·¥°¥Ê¥ë¤¬Ê᪤µ¤ì¤¿¾ì¹ç¡¢ ¥·¥°¥Ê¥ë¥Ï¥ó¥É¥é¤Î½èÍý¤¬½ª¤ï¤Ã¤¿¸å¤Ë sigsuspend() ¤ÏÊ֤ꡢ¥·¥°¥Ê¥ë¥Þ¥¹¥¯¤Ï sigsuspend() ¤¬¸Æ¤Ó½Ð¤µ¤ì¤ëÁ°¤Î¾õÂÖ¤ËÉü¸µ¤µ¤ì¤ë¡£

SIGKILL ¤È SIGSTOP ¤ò¶Ø»ß (block) ¤¹¤ë¤³¤È¤Ï¤Ç¤­¤Ê¤¤; ¤³¤ì¤é¤Î¥·¥°¥Ê¥ë¤ò mask ¤Ë»ØÄꤷ¤Æ¤â¡¢¥×¥í¥»¥¹¤Î¥·¥°¥Ê¥ë¥Þ¥¹¥¯¤Ï±Æ¶Á¤ò¼õ¤±¤Ê¤¤¡£

ÊÖ¤êÃÍ

sigsuspend() ¤Ï¾ï¤Ë -1 ¤òÊÖ¤·¡¢Ä̾ï¤Ï EINTR ¥¨¥é¡¼¤¬È¯À¸¤¹¤ë¡£

¥¨¥é¡¼

EFAULT
mask ¤¬»Ø¤·¤Æ¤¤¤ë¥á¥â¥ê¤¬¡¢¥×¥í¥»¥¹¤Î¥¢¥É¥ì¥¹¶õ´Ö¤ÎÍ­¸ú¤ÊÉôʬ¤Ç¤Ï¤Ê¤¤¡£
EINTR
¥·¥¹¥Æ¥à¥³¡¼¥ë¤Ï¥·¥°¥Ê¥ë¤Ë¤è¤ê³ä¤ê¹þ¤Þ¤ì¤¿¡£

½àµò

POSIX.1-2001.

Ãí°Õ

sigsuspend() ¤Ï¡¢Ä̾¥¯¥ê¥Æ¥£¥«¥ë¡¦¥³¡¼¥É¡¦¥»¥¯¥·¥ç¥ó (critical code section) ¤Î ¼Â¹ÔÃæ¤Ë¥·¥°¥Ê¥ë¤¬ÇÛÁ÷¤µ¤ì¤ë¤Î¤òËɻߤ¹¤ë¤¿¤á¤Ë¡¢ sigprocmask(2) ¤ÈÁȤ߹ç¤ï¤»¤Æ»ÈÍѤµ¤ì¤ë¡£ ¤Þ¤ººÇ½é¤Ë¡¢¸Æ¤Ó½Ð¤·¸µ¤Ï sigprocmask(2) ¤ò»È¤Ã¤Æ¥·¥°¥Ê¥ë¤ò¶Ø»ß¤¹¤ë¡£ ¥¯¥ê¥Æ¥£¥«¥ë¡¦¥³¡¼¥É¤¬´°Î»¤¹¤ë¤È¡¢¸Æ¤Ó½Ð¤·¸µ¤Ï sigprocmask(2) ¤¬ (oldset °ú¤­¿ô¤Ç) ÊÖ¤¹¥·¥°¥Ê¥ë¥Þ¥¹¥¯¤ò»ØÄꤷ¤Æ sigsuspend() ¤ò¸Æ¤Ó½Ð¤¹¤³¤È¤Ç¡¢¥¯¥ê¥Æ¥£¥«¥ë¡¦¥³¡¼¥É¼Â¹ÔÃæ¤ËȯÀ¸¤·¤¿ ¥·¥°¥Ê¥ë¤òÂԤĤ³¤È¤¬¤Ç¤­¤ë¡£

¥·¥°¥Ê¥ë½¸¹ç¤ÎÁàºî¤Ë´Ø¤¹¤ë¾ÜºÙ¤Ï sigsetops(3) ¤ò»²¾È¤Î¤³¤È¡£

´ØÏ¢¹àÌÜ

kill(2), pause(2), sigaction(2), signal(2), sigprocmask(2), sigwaitinfo(2), sigsetops(3), signal(7)