[][src]Struct gdnative::api::Thread

pub struct Thread { /* fields omitted */ }

core class Thread 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

Thread 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 Thread[src]

Constants

impl Thread[src]

pub fn new() -> Ref<Thread, 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 get_id(&self) -> GodotString[src]

Returns the current [Thread]'s ID, uniquely identifying it among all threads. If the [Thread] is not running this returns an empty string.

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

Returns [code]true[/code] if this [Thread] is currently active. An active [Thread] cannot start work on a new method but can be joined with [method wait_to_finish].

pub fn start(
    &self,
    instance: impl AsArg<Object>,
    method: impl Into<GodotString>,
    userdata: impl OwnedToVariant,
    priority: i64
) -> Result<(), GodotError>
[src]

Starts a new [Thread] that runs [code]method[/code] on object [code]instance[/code] with [code]userdata[/code] passed as an argument. Even if no userdata is passed, [code]method[/code] must accept one argument and it will be null. The [code]priority[/code] of the [Thread] can be changed by passing a value from the [enum Priority] enum.
				Returns [constant OK] on success, or [constant ERR_CANT_CREATE] on failure.

Default Arguments

  • userdata - null
  • priority - 1

pub fn wait_to_finish(&self) -> Variant[src]

Joins the [Thread] and waits for it to finish. Returns what the method called returned.

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 Thread[src]

impl Deref for Thread[src]

type Target = Reference

The resulting type after dereferencing.

impl DerefMut for Thread[src]

impl GodotObject for Thread[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 Thread[src]

impl SubClass<Object> for Thread[src]

impl SubClass<Reference> for Thread[src]

Auto Trait Implementations

impl RefUnwindSafe for Thread

impl !Send for Thread

impl !Sync for Thread

impl Unpin for Thread

impl UnwindSafe for Thread

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.