Go to file
Joshua Harlow 498bdca99c Allow for using and working with offset locks
Offset locks allow for lock inside a single file
using byte offsets, this avoids having to create hundreds
of lock files for each use case, and instead allows for
an application to be smarter, and shard locks from a single
file for its use-cases (assuming the file can pick a large
enough file with enough offsets to satisfy its needs).

This makes it much easier to cleanup lock files, track them
and know when to delete them (because deleting per-lock lock
files is hard to do when an application is always online, because
knowing when to delete a lock file is a non-trivial problem when
an application has no interface to tell which locks are alive or
dead and which are safe to delete).
2015-11-30 10:25:23 -08:00
2015-03-10 10:15:04 -07:00
2015-05-23 18:45:26 -07:00
2015-08-22 07:28:28 -07:00
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).
Description
RETIRED, further work has moved to Debian project infrastructure
Readme 178 KiB
Languages
Python 100%