×

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:41 2025
md5 checksum 271d61a0843dec9300b5d77653a2f07f
arch x86_64
build py311h6a678d5_0
depends libgcc-ng >=11.2.0, libstdcxx-ng >=11.2.0, python >=3.11,<3.12.0a0
license MIT
license_family MIT
md5 271d61a0843dec9300b5d77653a2f07f
name fastrlock
platform linux
sha1 555017db771df3e508190e6a1e02087932f195bd
sha256 b3b1ac93cad719f065f39257d850d006d36f8a6ccca7941fcef8addbc7b476fd
size 29892
subdir linux-64
timestamp 1676852319513
version 0.5