10.5. 线程同步功能


上述函数类型和描述列表提供了用于实时内核线程同步机制的功能信息。

Expand
表 10.2. Functions
功能描述

pthread_mutexattr_init(&my_mutex_attr)

使用由 attr 指定的属性启动 mutex。如果 attr 是 NULL,它将应用默认的 mutex 属性。

pthread_mutexattr_destroy(&my_mutex_attr)

销毁指定的 mutex 对象。您可以使用 pthread_mutex_init () 重新初始化。

pthread_mutexattr_setrobust()

指定 mutex 的 PTHREAD_MUTEX_ROBUST 属性。PTHREAD_MUTEX_ROBUST 属性定义可在不解锁 mutex 的情况下停止的线程。以后调用此 mutex 会自动成功,并返回 EOWNERDEAD 值,以指示前面的 mutex 所有者不再存在。

pthread_mutexattr_getrobust()

查询 mutex 的 PTHREAD_MUTEX_ROBUST 属性。

pthread_barrier_init()

分配所需的资源,以使用属性对象 attr 初始化 barrier。如果 attr 是 NULL,它将应用默认值。

pthread_cond_init()

初始化 condition 变量。cond 参数定义通过 condition 变量属性对象 attr 中属性启动的对象。如果 attr 是 NULL,它将应用默认值。

pthread_cond_wait()

阻止线程执行,直到它从另一个线程接收信号。另外,对这个功能的调用也会在阻塞前在 mutex 上释放相关的锁定。参数 cond 定义要阻止的线程的 pthread_cond_t 对象。mutex 参数将 mutex 指定为 unblock。

pthread_cond_signal()

至少在指定条件变量中阻止的一个线程的 Unblocks。参数 cond 指定使用 pthread_cond_t 对象取消阻塞线程。

返回顶部
Red Hat logoGithubredditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

通过我们的产品和服务,以及可以信赖的内容,帮助红帽用户创新并实现他们的目标。 了解我们当前的更新.

让开源更具包容性

红帽致力于替换我们的代码、文档和 Web 属性中存在问题的语言。欲了解更多详情,请参阅红帽博客.

關於紅帽

我们提供强化的解决方案,使企业能够更轻松地跨平台和环境(从核心数据中心到网络边缘)工作。

Theme

© 2025 Red Hat