信号量和自旋锁的区别?如何选择使用?


Posted in 面试题 onSeptember 08, 2015
如果代码需要睡眠(往往发生在和用户空间同步时),使用信号量是唯一的选择。由于信号量不受睡眠的限制,所以通常来说更加简单一些。
当需要在自旋锁和信号量中作选择时,选择结果应该取决于锁被持有的时间长短。理想的情况是所有的锁都应该尽可能短的占有,但如果锁的持有时间比较长,使用信号量是更好的选择。
信号量不会关闭内核抢占,所以持有自旋锁的代码可以被抢占。所以信号量不会对影响调度反应时间带来负面影响。

Tags in this post...

面试题 相关文章推荐
Tomcat Mysql datasource数据源配置
Dec 28 面试题
怎样在程序里获得一个空指针
Jan 24 面试题
主键(Primary Key)约束和唯一性(UNIQUE)约束的区别
May 29 面试题
WINDOWS域的具体实现方式是什么
Feb 20 面试题
在网络中有两台主机A和B,并通过路由器和其他交换设备连接起来,已经确认物理连接正确无误,怎么来测试这两台机器是否连通?如果不通,怎么来判断故障点?怎么排
Jan 13 面试题
网络编程中设计并发服务器,使用多进程与多线程,请问有什么区别?
Mar 27 面试题
如何选择使用结构还是类
May 30 面试题
What's the difference between deep copy and shallow copy? (深拷贝与浅拷贝有什么区别)
Nov 10 面试题
linux面试题参考答案(6)
Jun 23 面试题
下列程序在32位linux或unix中的结果是什么
Jan 26 面试题
智乐游戏测试笔试题
May 21 面试题
一道Delphi上机题
Jun 04 面试题
UNIX文件类型
Aug 29 #面试题
Unix/Linux开发面试题
Aug 16 #面试题
UNIX文件系统分类
Nov 11 #面试题
三个Unix的命令面试题
Apr 12 #面试题
介绍一些UNIX常用简单命令
Nov 11 #面试题
shell的种类有哪些
Apr 15 #面试题
解释i节点在文件系统中的作用
Nov 26 #面试题
You might like
解析PHP汉字转换拼音的类
2013/06/18 PHP
浅析PHP的静态成员函数效率更高的原因
2014/06/13 PHP
Zend Framework教程之Autoloading用法详解
2016/03/08 PHP
php使用变量动态创建类的对象用法示例
2017/02/06 PHP
gearman中worker常驻后台,导致MySQL server has gone away的解决方法
2020/02/27 PHP
PHP重载基础知识回顾
2020/09/10 PHP
javascript add event remove event
2008/04/07 Javascript
Extjs Gird 支持中文拼音排序实现代码
2013/04/15 Javascript
Javascript的setTimeout()使用闭包特性时需要注意的问题
2014/09/23 Javascript
基于jQuery Circlr插件实现产品图片360度旋转
2015/09/20 Javascript
BootStrap智能表单实战系列(四)表单布局介绍
2016/06/13 Javascript
jQuery实现的选择商品飞入文本框动画效果完整实例
2016/08/10 Javascript
jquery实现垂直和水平菜单导航栏
2020/08/27 Javascript
easyui-edatagrid.js实现回车键结束编辑功能的实例
2017/04/12 Javascript
微信小程序 wx:for遍历循环使用实例解析
2019/09/09 Javascript
微信小程序实现侧边栏分类
2019/10/21 Javascript
在vue项目中 实现定义全局变量 全局函数操作
2020/10/26 Javascript
[41:54]2018DOTA2亚洲邀请赛 4.1 小组赛A组加赛 TNC vs Liquid
2018/04/03 DOTA
python3实现短网址和数字相互转换的方法
2015/04/28 Python
python创建和删除目录的方法
2015/04/29 Python
python从sqlite读取并显示数据的方法
2015/05/08 Python
Python实现控制台进度条功能
2016/01/04 Python
Python2.x利用commands模块执行Linux shell命令
2016/03/11 Python
python中异常报错处理方法汇总
2016/11/20 Python
python自动12306抢票软件实现代码
2018/02/24 Python
python自动发送邮件脚本
2018/06/20 Python
Python Selenium实现无可视化界面过程解析
2020/08/25 Python
Python 中如何写注释
2020/08/28 Python
Lookfantastic德国官网:英国知名美妆购物网站
2017/06/11 全球购物
《李时珍夜宿古寺》教学反思
2014/04/09 职场文书
公司活动总结范文
2014/07/01 职场文书
群众路线自查报告及整改措施
2014/11/04 职场文书
走进毛泽东观后感
2015/06/04 职场文书
爱国电影观后感
2015/06/19 职场文书
html+css合并表格边框的示例代码
2021/03/31 HTML / CSS
javascript对象3个属性特征
2021/11/17 Javascript