设置互斥锁的类型
来源:互联网 发布:泰国有4g网络吗 编辑:程序博客网 时间:2024/05/16 06:21
类型:
缺省的互斥锁类型属性是:
PTHREAD_MUTEX_DEFAULT。
合法的类型属性值有:
PTHREAD_MUTEX_NORMAL:
>: 这种类型的互斥锁不会自动检测死锁。
>: 如果一个线程试图对一个互斥锁重复锁定,将会引起这个线程的死锁。
>: 如果试图解锁一个由别的线程锁定的互斥锁会引发不可预料的结果。
>: 如果一个线程试图解锁已经被解锁的互斥锁也会引发不可预料的结果。
PTHREAD_MUTEX_ERRORCHECK:
>: 这种类型的互斥锁会自动检测死锁。
>: 如果一个线程试图对一个互斥锁重复锁定,将会返回一个错误代码。
>: 如果试图解锁一个由别的线程锁定的互斥锁将会返回一个错误代码。
>: 如果一个线程试图解锁已经被解锁的互斥锁也将会返回一个错误代码。
PTHREAD_MUTEX_RECURSIVE:
>: 如果一个线程对这种类型的互斥锁重复上锁,不会引起死锁。
>: 一个线程对这类互斥锁的多次重复上锁必须由这个线程来重复相同数量的解
锁,这样才能解开这个互斥锁,别的线程才能得到这个互斥锁。
>: 如果试图解锁一个由别的线程锁定的互斥锁将会返回一个错误代码。
>: 如果一个线程试图解锁已经被解锁的互斥锁也将会返回一个错误代码。
>: 这种类型的互斥锁只能是进程私有的(作用域属性为
PTHREAD_PROCESS_PRIVATE)
PTHREAD_MUTEX_DEFAULT:
>: 这种类型的互斥锁不会自动检测死锁。
>: 如果一个线程试图对一个互斥锁重复锁定,将会引起不可预料的结果。
>: 如果试图解锁一个由别的线程锁定的互斥锁会引发不可预料的结果。
>: 如果一个线程试图解锁已经被解锁的互斥锁也会引发不可预料的结果。
>: POSIX标准规定,对于某一具体的实现,可以把这种类型的互斥锁定义为其他
缺省的互斥锁类型属性是:
PTHREAD_MUTEX_DEFAULT。
合法的类型属性值有:
PTHREAD_MUTEX_NORMAL:
>: 这种类型的互斥锁不会自动检测死锁。
>: 如果一个线程试图对一个互斥锁重复锁定,将会引起这个线程的死锁。
>: 如果试图解锁一个由别的线程锁定的互斥锁会引发不可预料的结果。
>: 如果一个线程试图解锁已经被解锁的互斥锁也会引发不可预料的结果。
PTHREAD_MUTEX_ERRORCHECK:
>: 这种类型的互斥锁会自动检测死锁。
>: 如果一个线程试图对一个互斥锁重复锁定,将会返回一个错误代码。
>: 如果试图解锁一个由别的线程锁定的互斥锁将会返回一个错误代码。
>: 如果一个线程试图解锁已经被解锁的互斥锁也将会返回一个错误代码。
PTHREAD_MUTEX_RECURSIVE:
>: 如果一个线程对这种类型的互斥锁重复上锁,不会引起死锁。
>: 一个线程对这类互斥锁的多次重复上锁必须由这个线程来重复相同数量的解
锁,这样才能解开这个互斥锁,别的线程才能得到这个互斥锁。
>: 如果试图解锁一个由别的线程锁定的互斥锁将会返回一个错误代码。
>: 如果一个线程试图解锁已经被解锁的互斥锁也将会返回一个错误代码。
>: 这种类型的互斥锁只能是进程私有的(作用域属性为
PTHREAD_PROCESS_PRIVATE)
PTHREAD_MUTEX_DEFAULT:
>: 这种类型的互斥锁不会自动检测死锁。
>: 如果一个线程试图对一个互斥锁重复锁定,将会引起不可预料的结果。
>: 如果试图解锁一个由别的线程锁定的互斥锁会引发不可预料的结果。
>: 如果一个线程试图解锁已经被解锁的互斥锁也会引发不可预料的结果。
>: POSIX标准规定,对于某一具体的实现,可以把这种类型的互斥锁定义为其他
类型的互斥锁。
#include<pthread.h>
#intpthread_mutexattr_settype (pthread_mutexattr_t * attr, intkind);
//!> 设置类型互斥类型
#intpthread_mutexattr_gettype (pthread_mutexattr_t * attr, int *kind);
//!> 获得类型互斥属性
若成功返回0,若失败返回错误编号。
0 0
- 设置互斥锁的类型
- 设置activity为Dialog类型的设置
- 设置DataTable.Columns的类型
- Xtext内部类型的设置
- EditText的inputType类型设置
- 常用MIME类型(Flv,Mp4的mime类型设置)
- 常用MIME类型(Flv,Mp4的mime类型设置)
- 常用MIME类型(Flv,Mp4的mime类型设置)
- 常用MIME类型(Mp4的mime类型设置)
- 主机/目标板调试设置的类型
- Mysql的日志类型与设置。
- Innodb表类型中autocommit的设置
- sourceinsight设置.cc类型的文件
- 设置Date类型,调用的 datetime 模块
- 通过代码设置color 类型的selector
- java_泛型,设置类型通配符的上限
- Android中设置文字大小的定义类型
- 经过代码设置color 类型的selector
- 5.1 Tomcat学习(servlet容器)
- Android studio异常Class not found using the boot class loader; no stack available
- 重写与重载编译时运行时不同之处
- 筛选需要的log信息保存到本地
- 通达OA触发器--压缩保存工作流中的表单文件和所有附件到服务器的指定目录(2013adv,2015,2016)
- 设置互斥锁的类型
- Codeforces 755F 规模较大的装箱dp
- OPC之DCOM配置
- ButterKnife v6.1.0的, v8.0.1主要的不同在以下几个关键词:
- 听讲座
- SpringMVC注解@RequestParam全面解析
- 浅谈信息安全及解决方案
- Java之多线程的实现:
- https ssl