Expand description
Interaction with Pythonβs global interpreter lock
Structs§
- LockGIL πUsed to lock safe access to the GIL
- Thread-safe storage for objects which were dec_ref while the GIL was not held.
- SuspendGIL πA guard which can be used to temporarily release the GIL and restore on
Drop
.
Enums§
- GILGuard πRAII type that represents the Global Interpreter Lock acquisition.
Constants§
- GIL_
COUNT πThis is an internal counter in pyo3 monitoring whether this thread has the GIL.
Statics§
- START π
Functions§
- decrement_
gil_ πcount Decrements pyo3βs internal GIL count - to be called whenever GILPool or GILGuard is dropped. - gil_
is_ πacquired Checks whether the GIL is acquired. - increment_
gil_ πcount Increments pyo3βs internal GIL count - to be called whenever GILPool or GILGuard is created. - prepare_
freethreaded_ python Neither PyPy
norGraalPy
Prepares the use of Python in a free-threaded context. - Registers a Python object pointer inside the release pool, to have its reference count decreased the next time the GIL is acquired in pyo3.
- register_
incref βpy-clone
Increments the reference count of a Python object if the GIL is held. If the GIL is not held, this function will panic. - with_
embedded_ βpython_ interpreter Neither PyPy
norGraalPy
Executes the provided closure with an embedded Python interpreter.
Type Aliases§
- PyObj
Vec π