mtx_lock

mtx_lock

在头文件中定义
int mtx_lock(mtx_t * mutex);(自C11以来)

阻塞当前线程,直到互斥锁指向的 mutex 被锁定。

如果当前线程已经锁定了互斥锁并且互斥锁不是递归的,则该行为是未定义的。

先前mtx_unlock对同一个互斥体的调用此操作同步,并且对任何给定互斥体的所有锁定/解锁操作形成单个总体顺序(类似于原子的修改顺序)。

参数

mutex-指向要锁定的互斥体的指针

返回值

如果成功,则返回thrd_success,否则返回thrd_error

参考

  • C11 标准(ISO / IEC 9899:2011):

扩展内容

mtx_timedlock(C11)阻塞直到锁定互斥锁或超时(功能)
mtx_trylock(C11)锁定互斥或返回,如果已锁定(功能)
mtx_unlock(C11)解锁互斥锁(功能)

| 用于锁定的C ++文档 |