Skip to main content

Signal blocking under Linux & OS X

Project description

Provides access to sigprocmask(2) and friends and convenience wrappers to python application developers wanting to SIG_BLOCK and SIG_UNBLOCK signals in critical sections of their code.

Most common usage

from signal import SIGINT, SIGTERM
from pysigset import suspended_signals

with suspended_signals(SIGINT, SIGTERM):
    # Signals are blocked here..
    pass
# Any pending signal is fired now..

Also available

sigaddset(*args)
    int sigaddset(sigset_t *set, int signum)

sigdelset(*args)
    int sigdelset(sigset_t *set, int signum)

sigemptyset(*args)
    int sigemptyset(sigset_t *set)

sigfillset(*args)
    int sigfillset(sigset_t *set)

sigismember(*args)
    int sigismember(const sigset_t *set, int signum)

sigpending(*args)
    int sigpending(sigset_t *set)

sigprocmask(*args)
    int sigprocmask(int how, const sigset_t *set, sigset_t *oldset)

sigsuspend(*args)
    int sigsuspend(const sigset_t *mask)

Similar tools

python-signalfd provides access to sigprocmask and signalfd. Its advantage is access to signalfd. Its disadvantage is a compilation requirement.

pysigset has a pythonic interface and requires only ctypes access to libc.so.6 or libSystem.B.dylib.

Changes

2021-05-03: 0.4.0

  • Change License to LGPL 3.

2015-09-22: 0.3.2

  • Python 3 compatibility (thanks Kevin Pouget).
  • Update version, update trove classifiers; adding Python 3, moving to Production/Stable.

2015-05-23: 0.2.2

  • Fix so we can install using setup.py again.

2013-07-30: 0.2.1

  • Fix so the RST is displayed on PyPI.

2013-07-30: 0.2

  • Add support for OS X / Darwin (thanks Dan Sully (dsully))
  • Add support for easy uploading to PyPI.

2013-04-15: 0.1

  • Initial release.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

pysigset-0.4.0.tar.gz (4.7 kB view hashes)

Uploaded source

Supported by

AWS AWS Cloud computing Datadog Datadog Monitoring Facebook / Instagram Facebook / Instagram PSF Sponsor Fastly Fastly CDN Google Google Object Storage and Download Analytics Huawei Huawei PSF Sponsor Microsoft Microsoft PSF Sponsor NVIDIA NVIDIA PSF Sponsor Pingdom Pingdom Monitoring Salesforce Salesforce PSF Sponsor Sentry Sentry Error logging StatusPage StatusPage Status page