Up to date

This page is up to date for Godot 4.0. If you still find outdated information, please open an issue.

Semaphore

Inherits: RefCounted < Object

A synchronization mechanism used to control access to a shared resource by Threads.

Description

A synchronization semaphore which can be used to synchronize multiple Threads. Initialized to zero on creation. Be careful to avoid deadlocks. For a binary version, see Mutex.

Tutorials

Methods

void

post ( )

bool

try_wait ( )

void

wait ( )


Method Descriptions

void post ( )

Lowers the Semaphore, allowing one more thread in.


bool try_wait ( )

Like wait, but won’t block, so if the value is zero, fails immediately and returns false. If non-zero, it returns true to report success.


void wait ( )

Waits for the Semaphore, if its value is zero, blocks until non-zero.