Trait OnceExt
pub trait OnceExt: Sealed {
type OnceState;
// Required methods
fn call_once_py_attached(&self, py: Python<'_>, f: impl FnOnce());
fn call_once_force_py_attached(
&self,
py: Python<'_>,
f: impl FnOnce(&Self::OnceState),
);
}Available on crate feature
tls only.Expand description
Required Associated Types§
type OnceState
type OnceState
The state of Once
Required Methods§
fn call_once_py_attached(&self, py: Python<'_>, f: impl FnOnce())
fn call_once_py_attached(&self, py: Python<'_>, f: impl FnOnce())
Similar to call_once, but releases the Python GIL temporarily
if blocking on another thread currently calling this Once.
fn call_once_force_py_attached(
&self,
py: Python<'_>,
f: impl FnOnce(&Self::OnceState),
)
fn call_once_force_py_attached( &self, py: Python<'_>, f: impl FnOnce(&Self::OnceState), )
Similar to call_once_force, but releases the Python GIL
temporarily if blocking on another thread currently calling this Once.
Dyn Compatibility§
This trait is not dyn compatible.
In older versions of Rust, dyn compatibility was called "object safety", so this trait is not object safe.