×

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:40 2025
md5 checksum 7c5b0a44fac20df6f8194c74900a9615
arch x86_64
build py310h295c915_0
depends libgcc-ng >=7.5.0, libstdcxx-ng >=7.5.0, python >=3.10,<3.11.0a0
license MIT
license_family MIT
md5 7c5b0a44fac20df6f8194c74900a9615
name fastrlock
platform linux
sha1 8e2c79f097cb7fca14721a0a7d884ff4b55b81be
sha256 912f5fafab1105480b8736f242bc52ba1a6ca5c258e127e9f7a318d813081d24
size 74676
subdir linux-64
timestamp 1640790026258
version 0.5