6.2 创建和销毁互斥量

编程入门 行业动态 更新时间:2024-10-24 10:25:28

6.2 创建和销毁<a href=https://www.elefans.com/category/jswz/34/1769483.html style=互斥量"/>

6.2 创建和销毁互斥量

方法

pthread_mutex_init(mutex, attr)

pthread_mutex_destroy(mutex)

pthread_mutexattr_init(attr)

pthread_mutexattr_destroy(attr)

用法

        互斥量的类型为pthread_mutex_t,必须在使用前初始化。有如下两种初始化互斥量的方法:

  • 声明时初始化,如下
pthread_mutex_t mymutex = PTHREAD_MUTEX_INITIALIZER;
  • 使用pthread_mutex_init()初始化,如下
pthread_mutex_t mymutex;
pthread_mutex_init(&mymutex, NULL);

        初始化后互斥量为未上锁的状态。

        参数attr用于设置互斥量的属性信息,类型为pthread_mutexattr_t,可设为NULL。Pthreads主要定义了互斥量的三个属性(可选):

  • 协议:制定避免互斥量优先级翻转的协议
  • 优先级上限:指定互斥量优先级的上限
  • 线程共享:制定线程共享互斥量的相关信息

        注意不是所有的平台具体实现中都一定提供如上的互斥量的三种属性信息。

        pthread_mutexattr_init()和pthread_mutexattr_destroy()用于创建和销毁互斥量属性对象;在一个互斥量不再被使用时应该调用pthread_mutex_destroy()将其销毁。

更多推荐

6.2 创建和销毁互斥量

本文发布于:2023-11-16 12:58:06,感谢您对本站的认可!
本文链接:https://www.elefans.com/category/jswz/34/1622651.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
本文标签:互斥

发布评论

评论列表 (有 0 条评论)
草根站长

>www.elefans.com

编程频道|电子爱好者 - 技术资讯及电子产品介绍!