×

This is a C-level implementation of a fast, re-entrant, optimistic lock for CPython. It is a drop-in replacement for threading.RLock. FastRLock is implemented in Cython and also provides a C-API for direct use from Cython code via from fastrlock cimport rlock. Under normal conditions, it is about 10x faster than threading.RLock in Python 2.7 because it avoids all locking unless two or more threads try to acquire it at the same time. Under congestion, it is still about 10% faster than RLock due to being implemented in Cython. This is mostly equivalent to the revised RLock implementation in Python 3.2, but still faster due to being implemented in Cython. Note that the threading.RLock implementation in Python 3.4 and later tends to be as fast or even faster than the lock provided by this package, when called through the Python API. FastRLock is still faster also on these systems when called through its Cython API.

Uploaded Mon Mar 31 21:35:38 2025
md5 checksum 7f3e5837a4432a195efc42c2e8c9c23d
arch x86_64
build py311h5eee18b_0
depends libgcc-ng >=11.2.0, python >=3.11,<3.12.0a0
license MIT
license_family MIT
md5 7f3e5837a4432a195efc42c2e8c9c23d
name fastrlock
platform linux
sha1 61798b8d04ec5a19fc218cf69feb0431dd29c594
sha256 90544e1910c211c4c2fa3579640e90f53a942a79e6f9f1f7bcace76153c3cd5f
size 36974
subdir linux-64
timestamp 1736260155032
version 0.8.3