Attention: Here be dragons

This is the latest (unstable) version of this documentation, which may document features not available in or compatible with released stable versions of Godot.

Thread

Inherits: RefCounted < Object

A unit of execution in a process.

Description

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

Warning:

To ensure proper cleanup without crashes or deadlocks, when a Thread's reference count reaches zero and it is therefore destroyed, the following conditions must be met:

Tutorials

Methods

String

get_id ( ) const

bool

is_alive ( ) const

bool

is_started ( ) const

void

set_thread_safety_checks_enabled ( bool enabled ) static

Error

start ( Callable callable, Priority priority=1 )

Variant

wait_to_finish ( )


Enumerations

enum Priority:

Priority PRIORITY_LOW = 0

A thread running with lower priority than normally.

Priority PRIORITY_NORMAL = 1

A thread with a standard priority.

Priority PRIORITY_HIGH = 2

A thread running with higher priority than normally.


Method Descriptions

String get_id ( ) const

Returns the current Thread's ID, uniquely identifying it among all threads. If the Thread has not started running or if wait_to_finish has been called, this returns an empty string.


bool is_alive ( ) const

Returns true if this Thread is currently running the provided function. This is useful for determining if wait_to_finish can be called without blocking th