PTHREAD_SIGMASK(3)

PTHREAD_SIGMASK(3) | Library Functions Manual | PTHREAD_SIGMASK(3)

# NAME

pthread_sigmask — examine and/or change a thread's signal mask

# LIBRARY

POSIX Threads Library (libpthread, -lpthread)

# SYNOPSIS

#include <signal.h>

int
pthread_sigmask(int how, const sigset_t * restrict set, sigset_t * restrict oset);

# DESCRIPTION

The pthread_sigmask() function examines and/or changes the calling thread's signal mask.

If set is not NULL, it specifies a set of signals to be modified, and how specifies what to set the signal mask to:

SIG_BLOCK
  Union of the current mask and set.
SIG_UNBLOCK
  Intersection of the current mask and the complement of set.
SIG_SETMASK
  set.

If oset is not NULL, the previous signal mask is stored in the location pointed to by oset.

SIGKILL and SIGSTOP cannot be blocked, and will be silently ignored if included in the signal mask.

# RETURN VALUES

If successful, pthread_sigmask() returns 0. Otherwise, an error is returned.

# ERRORS

pthread_sigmask() shall fail if:

[EINVAL]
  how is not one of the defined values.

# SEE ALSO

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

# STANDARDS

The function conforms to IEEE Std 1003.1-2001 (“POSIX.1”).

July 9, 2010 | NetBSD 7.1