Thread

    A unit of execution in a process.

    A unit of execution in a process. Can run methods on s simultaneously. The use of synchronization via Mutex or is advised if working with shared objects.

    Note: Breakpoints won’t break on code if it’s running in a thread. This is a current limitation of the GDScript debugger.

    enum Priority:

    • PRIORITY_LOW = 0 —- A thread running with lower priority than normally.

    • get_id ( ) const

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


    • bool is_active ( ) const

    Returns true if this Thread has been started. Once started, this will return true until it is joined using . For checking if a Thread is still executing its task, use is_alive.


    • is_alive ( ) const

    Returns true if this is currently running. This is useful for determining if wait_to_finish can be called without blocking the calling thread.

    To check if a Thread is joinable, use .


    Starts a new Thread that runs method on object instance with userdata passed as an argument. Even if no userdata is passed, method must accept one argument and it will be null. The of the Thread can be changed by passing a value from the Priority enum.

    Returns on success, or @GlobalScope.ERR_CANT_CREATE on failure.


    • wait_to_finish ( )

    Joins the Thread and waits for it to finish. Returns the output of the method passed to start.

    Should either be used when you want to retrieve the value returned from the method called by the Thread or before freeing the instance that contains the Thread.

    To determine if this can be called without blocking the calling thread, check if is false.