table of contents
SIGPAUSE(2) | Linux - příručka Programátora | SIGPAUSE(2) |
JMÉNO¶
sigpause - atomicky uvolní blokované signály a čeká na přerušení
SYNTAXE¶
#include <signal.h>
int sigpause(int sigmask); /* BSD */
int sigpause(int sig); /* SYSTEM V / Unix 95 */
POPIS¶
Tato funkce je zastaralá a je nahrazena funkcí sigsuspend(2).
Funkce sigpause nastaví masku blokovaných signálů na sigmask a poté čeká na příchod signálu. Při návratu je obnovena původní maska signálů.
NÁVRATOVÁ HODNOTA¶
Pokud se funkce sigpause () vrátí, byla ukončena přerušením a návratová hodnota je -1 a globální proměnná errno je nastavena na EINTR.
SPLŇUJE STANDARDY¶
Systém V verze funkce sigpause() je standardizována v POSIX.1-2001.
POZNÁMKY¶
- Historie
- Klasická BSD verze této funkce se objevila v 4.2BSD. Nastavuje masku signálů procesu na sigmask. Unix95 standardizoval nekompatibilní System V verzi této funkce, která odstraní specifikovaný signál sig ze signálové masky procesu. Nepřehledná situace kolem dvou nekompatibilních funkcí se stejným názvem byla vyřešena pomocí funkce sigsuspend(2), která bere argument sigset_t * (místo int).
- Linuxové poznámky
- Na Linuxu je tato rutina systémovým voláním
pouze na architektuře Sparc (sparc64).
Libc4 a libc5 užívají pouze BSD verzi.
Glibc používá BSD verzi pokud je specifikována třída testovacích maker _BSD_SOURCE a zároveň není definováno žádné z _POSIC_SOURCE,_POSIX_C_SOURCE, _XOPEN_SOURCE, _GNU_SOURCE, _SVID_SOURCE. System V verze je použita v _XOPEN_SOURCE pokud je definováno.
DALŠÍ INFORMACE¶
sigsuspend(2), kill(2), sigaction(2), sigprocmask(2), sigblock(2), sigvec (2), feature_test_macros(7)
TIRÁŽ¶
Tato stránka je součástí projektu Linux man-pages. Popis projektu a informace o hlášení chyb najdete na http://www.kernel.org/doc/man-pages/.
25. září 2009 | Linux 1.3 |