博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
信号量和互斥量
阅读量:4153 次
发布时间:2019-05-25

本文共 394 字,大约阅读时间需要 1 分钟。

转自:

1. 互斥量用于线程的互斥,信号线用于线程的同步。    

  
这是互斥量和信号量的根本区别,也就是互斥和同步之间的区别。    
  
互斥:是指某一资源同时只允许一个访问者对其进行访问,具有唯一性和排它性。但互斥无法限制访问者对资源的访问顺序,即访问是无序的。    
  
同步:是指在互斥的基础上(大多数情况),通过其它机制实现访问者对资源的有序访问。在大多数情况下,同步已经实现了互斥,特别是所有写入资源的情况必定是互斥的。少数情况是指可以允许多个访问者同时访问资源    
  
2. 互斥量值只能为0/1,信号量值可以为非负整数。    
  
也就是说,一个互斥量只能用于一个资源的互斥访问,它不能实现多个资源的多线程互斥问题。信号量可以实现多个同类资源的多线程互斥和同步。当信号量为单值信号量是,也可以完成一个资源的互斥访问。    
  
3. 互斥量的加锁和解锁必须由同一线程分别对应使用,信号量可以由一个线程释放,另一个线程得到。  
信号量   

转载地址:http://nseti.baihongyu.com/

你可能感兴趣的文章
ORACLE: MERGE INTO用法
查看>>
PL/SQL 记录集合IS TABLE OF的使用
查看>>
ORACLE批量绑定FORALL与BULK COLLECT
查看>>
oracle 管道化表函数(Pipelined Table)
查看>>
oracle提高查询效率
查看>>
Oracle分组函数之ROLLUP魅力
查看>>
Oracle分组函数之CUBE魅力
查看>>
PL/SQL开发中动态SQL的使用与过程分页
查看>>
取消正在运行的存储过程
查看>>
oracle 索引
查看>>
Oracle硬解析与软解析
查看>>
Oracle SGA
查看>>
Oracle执行计划详解
查看>>
执行计划执行顺序
查看>>
ORACLE优化器
查看>>
js闭包
查看>>
Oracle动态性能表(1)-V$SQLAREA
查看>>
Oracle动态性能表-(2)-V$SQLTEXT
查看>>
Oracle动态性能表-(3)-V$SYSSTAT
查看>>
Oracle动态性能表-(4)-V$SESSTAT
查看>>