互斥锁的类型
来源:互联网 发布:神机妙算软件购买 编辑:程序博客网 时间:2024/05/18 09:57
内容转自百度百科。防止自己老是去找说明,记录在案
如果互斥锁类型为 PTHREAD_MUTEX_NORMAL,则不提供死锁检测。尝试重新锁定互斥锁会导致死锁。如果某个线程尝试解除锁定的互斥锁不是由该线程锁定或未锁定,则将产生不确定的行为。
如果互斥锁类型为 PTHREAD_MUTEX_NORMAL,则不提供死锁检测。尝试重新锁定互斥锁会导致死锁。如果某个线程尝试解除锁定的互斥锁不是由该线程锁定或未锁定,则将产生不确定的行为。
如果互斥锁类型为 PTHREAD_MUTEX_ERRORCHECK,则会提供错误检查。如果某个线程尝试重新锁定的互斥锁已经由该线程锁定,则将返回错误。如果某个线程尝试解除锁定的互斥锁不是由该线程锁定或者未锁定,则将返回错误。
如果互斥锁类型为 PTHREAD_MUTEX_RECURSIVE,则该互斥锁会保留锁定计数这一概念。线程首次成功获取互斥锁时,锁定计数会设置为 1。线程每重新锁定该互斥锁一次,锁定计数就增加 1。线程每解除锁定该互斥锁一次,锁定计数就减小 1。 锁定计数达到 0 时,该互斥锁即可供其他线程获取。如果某个线程尝试解除锁定的互斥锁不是由该线程锁定或者未锁定,则将返回错误。
如果互斥锁类型是 PTHREAD_MUTEX_DEFAULT,则尝试以递归方式锁定该互斥锁将产生不确定的行为。对于不是由调用线程锁定的互斥锁,如果尝试解除对它的锁定,则会产生不确定的行为。如果尝试解除锁定尚未锁定的互斥锁,则会产生不确定的行为。
0 0
- 互斥锁的类型
- 设置互斥锁的类型
- 类型参数的类型推断
- 类型参数的类型推断
- 基本类型的包装类型
- 地理数据库的类型geodatabase类型
- 基本类型的类型转换
- 基本类型的类型转换
- Integer类型、int类型类型、String类型的相互转换
- Java 数组类型(基本类型数组类型、封装类型数组类型、数组的数组类型)
- 数组的真实类型必须是泛型类型的子类型
- 四大类型的语言,动态,静态,强类型,弱类型
- 四大类型的语言,动态,静态,强类型,弱类型
- java类型,hibernate类型,sql类型之间的对应关系
- 【VC++类型转换】CString类型到Char[]类型的转换
- _variant_t类型和CString类型、CTime类型的相互转换
- 优先选择基本类型而不是基本类型的包装类型
- C#中值类型和引用类型及类型的转换
- 侧栏组件
- Java之序列化
- 软件测试基础知识
- Android 笔记整理
- R-CNN随笔No.4
- 互斥锁的类型
- Poj 3259 Wormholes(spfa判负环)
- Code Review 程序员的寄望与哀伤
- Android多线程断点续传下载
- phpStorm10服务器+XDebug配置
- 自定义高德地图导航界面
- android中Appwidget的使用
- JSP 动作
- Android资源管理框架(Asset Manager)简要介绍和学习计划