Expose unsafe wrappers for Py_BEGIN_CRITICAL_SECTION_MUTEX API by ngoldbaum · Pull Request #5642 · PyO3/pyo3 (original) (raw)

@@ -1,4 +1,4 @@

#[cfg(Py_GIL_DISABLED)]

#[cfg(any(Py_3_14, Py_GIL_DISABLED))]

use crate::PyMutex;

use crate::PyObject;

Expand All

@@ -24,7 +24,15 @@ opaque_struct!(pub PyCriticalSection2);

extern "C" {

pub fn PyCriticalSection_Begin(c: *mut PyCriticalSection, op: *mut PyObject);

#[cfg(Py_3_14)]

pub fn PyCriticalSection_BeginMutex(c: *mut PyCriticalSection, m: *mut PyMutex);

pub fn PyCriticalSection_End(c: *mut PyCriticalSection);

pub fn PyCriticalSection2_Begin(c: *mut PyCriticalSection2, a: *mut PyObject, b: *mut PyObject);

#[cfg(Py_3_14)]

pub fn PyCriticalSection2_BeginMutex(

c: *mut PyCriticalSection2,

m1: *mut PyMutex,

m2: *mut PyMutex,

);

pub fn PyCriticalSection2_End(c: *mut PyCriticalSection2);

}