Mutex

Inherits: Reference < Object

一个同步互斥锁(相互排斥)。

描述

一个同步互斥锁(mutex)。它用于同步多个Thread,相当于一个二进制Semaphore。它保证每次只有一个线程可以获得锁。互斥锁可以用来保护临界区;但是,要注意避免死锁。

教程

方法

void

lock ( )

Error

try_lock ( )

void

unlock ( )

方法说明

  • void lock ( )

锁定此 Mutex,直到被当前所有者解锁为止。

注意: 如果线程已经拥有互斥锁的所有权,该函数将无阻塞地返回。


试图锁定此Mutex,但并不阻塞。成功时返回@GlobalScope.OK,否则返回@GlobalScope.ERR_BUSY

注意: 如果线程已经拥有了该Mutex的所有权,该函数返回@GlobalScope.OK


  • void unlock ( )

解锁这个 Mutex,把它留给其他线程。

注意:如果一个线程在已经拥有互斥锁的情况下多次调用locktry_lock,它也必须调用相同次数的unlock才能正确解锁.