8.5. 线程同步功能


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

Expand
表 8.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 的障碍。如果 attr 是 NULL,它会应用默认值。

pthread_cond_init()

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

pthread_cond_wait()

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

pthread_cond_signal()

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

Red Hat logoGithubredditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

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

让开源更具包容性

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

關於紅帽

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

Theme

© 2026 Red Hat
返回顶部