RETIRED, further work has moved to Debian project infrastructure
Go to file
2015-12-27 10:40:04 +02:00
doc/source Fix the generated docs displayed version 2015-06-13 18:25:39 -07:00
fasteners Add useful link to locking blog 2015-12-13 12:04:17 -08:00
.travis.yml Add Python 3.5 and PyPy to Travis 2015-12-27 10:40:04 +02:00
ChangeLog Update changelog with fixed issue 2015-11-12 22:40:28 -08:00
LICENSE Initial commit 2015-03-10 10:15:04 -07:00
MANIFEST.in Add ChangeLog and README.rst to MANIFEST.in 2015-06-12 16:08:50 -07:00
README.rst Add latest version badge to README.rst 2015-06-16 08:37:00 -07:00
setup.cfg Add a setup.cfg file 2015-05-23 18:45:26 -07:00
setup.py Fix version.py file to reflect reality 2015-11-12 22:46:46 -08:00
test-requirements.txt Ensure sphinx sphinx-rtd-theme is listed in test-requirements.txt 2015-06-06 18:41:33 -07:00
tox.ini Remove py33 support 2015-03-10 11:06:42 -07:00

Fasteners

image

Documentation Status

Downloads

Latest Version

Overview

A python package that provides useful locks.

It includes the following.

Locking decorator

  • Helpful locked decorator (that acquires instance objects lock(s) and acquires on method entry and releases on method exit).

Reader-writer locks

  • Multiple readers (at the same time).
  • Single writers (blocking any readers).
  • Helpful read_locked and write_locked decorators.

Inter-process locks

  • Single writer using file based locking (these automatically release on process exit, even if __release__ or __exit__ is never called).
  • Helpful interprocess_locked decorator.

Generic helpers

  • A try_lock helper context manager that will attempt to acquire a given lock and provide back whether the attempt passed or failed (if it passes, then further code in the context manager will be ran with the lock acquired).