terrychen
驱动小牛
驱动小牛
  • 注册日期2002-04-15
  • 最后登录2014-03-13
  • 粉丝0
  • 关注0
  • 积分174分
  • 威望68点
  • 贡献值0点
  • 好评度15点
  • 原创分0分
  • 专家分0分
阅读:1885回复:7

spin_lock与mutex的区别

楼主#
更多 发布于:2003-12-31 17:13
一直搞不清楚,问问大家。
y5318
驱动中牛
驱动中牛
  • 注册日期2001-09-18
  • 最后登录2018-05-29
  • 粉丝1
  • 关注0
  • 积分14分
  • 威望22点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
  • 社区居民
沙发#
发布于:2003-12-31 17:45
DDK有啊~_~
terrychen
驱动小牛
驱动小牛
  • 注册日期2002-04-15
  • 最后登录2014-03-13
  • 粉丝0
  • 关注0
  • 积分174分
  • 威望68点
  • 贡献值0点
  • 好评度15点
  • 原创分0分
  • 专家分0分
板凳#
发布于:2003-12-31 17:48
有么,有spin_lock和mutex的比较么?spin_lock感觉和mutex差不多,不过就是时间有限制
cool-net
驱动小牛
驱动小牛
  • 注册日期2003-03-18
  • 最后登录2010-01-05
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
地板#
发布于:2003-12-31 19:23
1. spinlock之所以叫spinlock就因为它是忙等,不会阻塞系统对忙等线程的调度(就是说线程总是ready的,只要不发生抢占,则该线程会占着CPU不放)。而mutex不是,它会系统阻塞请求线程(如果mutex的现行属主不释放它,别的请求线程的调度状态都是wait)。

2. spinlock请求成功之后,CPU的执行级别会提升到DL,mutex不会。

3. DL及以下级别都可以请求spinlock。mutex只能在PL请求(除非timeout=0且锁空间在NonPagedPool里分配,实际上就是ReadState操作)。

4. 最重要的,spinlock是“非递归锁”,而mutex是“递归锁”。

5. 再想想... ...
有错误才会有进步,所以我的人生目标是: 错误不断,毁人不倦!
terrychen
驱动小牛
驱动小牛
  • 注册日期2002-04-15
  • 最后登录2014-03-13
  • 粉丝0
  • 关注0
  • 积分174分
  • 威望68点
  • 贡献值0点
  • 好评度15点
  • 原创分0分
  • 专家分0分
地下室#
发布于:2003-12-31 21:33
I see, thank you very much.
RED_spring
驱动中牛
驱动中牛
  • 注册日期2002-07-28
  • 最后登录2016-11-06
  • 粉丝0
  • 关注0
  • 积分3分
  • 威望19点
  • 贡献值0点
  • 好评度17点
  • 原创分0分
  • 专家分0分
  • 社区居民
5楼#
发布于:2004-01-03 22:53
精辟!
wwjmaomao
驱动牛犊
驱动牛犊
  • 注册日期2003-07-07
  • 最后登录2004-06-07
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
6楼#
发布于:2004-01-06 21:44
还有SPIN_LOCK 可用于多CPU。。
AthlonXP
驱动小牛
驱动小牛
  • 注册日期2003-05-11
  • 最后登录2010-01-20
  • 粉丝0
  • 关注0
  • 积分10分
  • 威望1点
  • 贡献值0点
  • 好评度1点
  • 原创分0分
  • 专家分0分
7楼#
发布于:2004-01-09 09:08
还有SPIN_LOCK 可用于多CPU。。

主要用于多cpu环境
AthlonXP是个好人,他一生没有欺压过同侪,没有背叛过朋友。从小到大,他都是个好孩子,没有出过什么差错,没有让家人师长担过心。虽然用一句时髦的话,他不善于"推销"自己,但是做学问扎扎实实,不会投机取巧;做工作也是一步一个脚印,不会敷衍塞责。他虽然是个大烟枪,偶尔也喝喝酒,但是没有什么见不得人的恶习。他花钱虽然不特别大方,可是也不吝啬。许多不如他的人,或幸或不幸,一般的也都成了家。可是为什么MM不喜欢他呢??
游客

返回顶部