[][src]Struct gdnative::api::Mutex

pub struct Mutex { /* fields omitted */ }

core class Mutex inherits Reference (reference counted).

Official documentation

See the documentation of this class in the Godot engine's official documentation.

Memory management

The lifetime of this object is automatically managed through reference counting.

Class hierarchy

Mutex inherits methods from:

Safety

All types in the Godot API have "interior mutability" in Rust parlance. To enforce that the official thread-safety guidelines are followed, the typestate pattern is used in the Ref and TRef smart pointers, and the Instance API. The typestate Access in these types tracks whether the access is unique, shared, or exclusive to the current thread. For more information, see the type-level documentation on Ref.

Implementations

impl Mutex[src]

pub fn new() -> Ref<Mutex, Unique>[src]

Creates a new instance of this object.

This is a reference-counted type. The returned object is automatically managed by Ref.

pub fn lock(&self)[src]

Locks this [Mutex], blocks until it is unlocked by the current owner.

pub fn try_lock(&self) -> Result<(), GodotError>[src]

Tries locking this [Mutex], but does not block. Returns [constant OK] on success, [constant ERR_BUSY] otherwise.

pub fn unlock(&self)[src]

Unlocks this [Mutex], leaving it to other threads.

Methods from Deref<Target = Reference>

pub fn init_ref(&self) -> bool[src]

Initializes the internal reference counter. Use this only if you really know what you are doing.
				Returns whether the initialization was successful.

Trait Implementations

impl Debug for Mutex[src]

impl Deref for Mutex[src]

type Target = Reference

The resulting type after dereferencing.

impl DerefMut for Mutex[src]

impl GodotObject for Mutex[src]

type RefKind = RefCounted

The memory management kind of this type. This modifies the behavior of the Ref smart pointer. See its type-level documentation for more information. Read more

impl Instanciable for Mutex[src]

impl SubClass<Object> for Mutex[src]

impl SubClass<Reference> for Mutex[src]

Auto Trait Implementations

impl RefUnwindSafe for Mutex

impl !Send for Mutex

impl !Sync for Mutex

impl Unpin for Mutex

impl UnwindSafe for Mutex

Blanket Implementations

impl<T> Any for T where
    T: 'static + ?Sized
[src]

impl<T> Borrow<T> for T where
    T: ?Sized
[src]

impl<T> BorrowMut<T> for T where
    T: ?Sized
[src]

impl<T> From<T> for T[src]

impl<T, U> Into<U> for T where
    U: From<T>, 
[src]

impl<T> SubClass<T> for T where
    T: GodotObject
[src]

impl<T, U> TryFrom<U> for T where
    U: Into<T>, 
[src]

type Error = Infallible

The type returned in the event of a conversion error.

impl<T, U> TryInto<U> for T where
    U: TryFrom<T>, 
[src]

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.