Semaphore
继承: RefCounted < Object
同步机制,用于控制对 Thread 之间共享资源的访问。
描述
同步机制,用于控制对 Thread 之间共享资源的访问。创建时初始化为零。二元版本见 Mutex。
警告:信号量必须谨慎使用,防止死锁。
警告:为了确保操作系统能够执行正确的清理(避免崩溃和思索),必须满足以下条件:
Semaphore 的引用计数变为零,导致销毁时,没有线程在等待该信号量。
Thread 的引用计数变为零,导致销毁时,没有在等待任何信号量。
教程
方法
void | post ( ) |
try_wait ( ) | |
void | wait ( ) |
方法说明
void post ( )
降低 Semaphore,额外允许一个线程进入。
bool try_wait ( )
与 wait 类似,但不会阻塞,所以如果值为零,则会立即失败并返回 false
。如果非零,则返回 true
以报告成功。
void wait ( )
等待该 Semaphore,如果它的值为零,则阻塞到变为非零为止。
© 版权所有 2014-present Juan Linietsky, Ariel Manzur and the Godot community (CC BY 3.0). Revision b1c660f7
.
Built with Sphinx using a theme provided by Read the Docs.