Skip to main content

Pidfile featuring stale detection and file-locking, can also be used as context-manager or decorator

Project description

https://travis-ci.org/trbs/pid.svg?branch=master https://coveralls.io/repos/trbs/pid/badge.png

PidFile class featuring:

  • stale detection
  • pidfile locking (fcntl)
  • chmod (default is 0o644)
  • chown
  • custom exceptions

Context Manager

PidFile can be used as a context manager:

from pid import PidFile

with PidFile():
  do_something()

Decorator

PidFile can also be used a a decorator:

from pid.decorator import pidfile

@pidfile
def main():
  pass

if __name__ == "__main__":
  main()

Exception Order

In default mode PidFile will try to acquire a file lock before anything else. This means that normally you get a PidFileAlreadyLockedError instead of the PidFileAlreadyRunningError when running a program twice.

If you just want to know if a program is already running its easiest to use just PidFileError since it will capture all possible PidFile exceptions.

Project details


Download files

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

Filename, size & hash SHA256 hash help File type Python version Upload date
pid-1.0.8-py2.py3-none-any.whl (4.9 kB) Copy SHA256 hash SHA256 Wheel 2.7
pid-1.0.8.tar.gz (3.7 kB) Copy SHA256 hash SHA256 Source None

Supported by

Elastic Elastic Search Pingdom Pingdom Monitoring Google Google BigQuery Sentry Sentry Error logging AWS AWS Cloud computing DataDog DataDog Monitoring Fastly Fastly CDN SignalFx SignalFx Supporter DigiCert DigiCert EV certificate StatusPage StatusPage Status page