summaryrefslogtreecommitdiff
path: root/python/fasteners/README
blob: 5d8c6e2a23f28cf1cbbe6de152cde529be83b57a (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
fasteners (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).