介绍一下Ruby的多线程处理


Posted in 面试题 onFebruary 01, 2013
Ruby的多线程是用户级多线程,这样使得Ruby的多线程移植非常容易,你并不需关心具体的操作系统;这样做也使线程容易控制,程序不容易产生死锁这类严重的线程问题。
但是同时,由于Ruby的多线程并不是真正意义上的操作系统级多线程,不管代码使用了多少个Thread类的实例,都只会在启动解释器这一个进程内执行,由Ruby解释器进行具体的线程切换管理,其效率要低于由操作系统管理线程的效率,且不能使用多个CPU。
在Ruby中同时做多件事最简单的方式就是使用Thread类,Thread类提供了一种高效和轻量级的手段来同时处理多件任务。
Thread类由Ruby解释器具体实现,提供了一种同时处理多个任务的方法, Thread类实现的并不是操作系统级多线程。
Ruby多线程的优点和缺点同样明显,缺点是效率不如操作系统级多线程,不能使用多个CPU,但其优点也很明显,即可移植性很高。这就需要设计人员综合考虑。

Tags in this post...

面试题 相关文章推荐
PHP开发的一般流程
Aug 13 面试题
如何将字串String转换成整数int
Feb 21 面试题
int *p=NULL和*p= NULL有什么区别
Oct 23 面试题
利用异或运算实现两个无符号数的加法运算
Dec 20 面试题
SQL Server 2000数据库的文件有哪些,分别进行描述
Mar 30 面试题
.net笔试题
Mar 03 面试题
武汉高蓝德国际.net机试
Jun 24 面试题
了解AppleTalk协议吗
Apr 01 面试题
abstract是什么意思
Feb 12 面试题
一些Solaris面试题
Mar 22 面试题
Python里面search()和match()的区别
Sep 21 面试题
JDBC操作数据库的基本流程是什么
Oct 28 面试题
Ruby如何创建一个线程
Mar 10 #面试题
Ruby如何进行文件操作
Jul 17 #面试题
Ruby如何实现动态方法调用
Nov 18 #面试题
介绍一下Ruby的特点
Jan 20 #面试题
JPA的优势都有哪些
Jul 04 #面试题
J2EE中的容器都包括哪些
Aug 21 #面试题
J2EE面试题
Mar 14 #面试题
You might like
PHP利用APC模块实现文件上传进度条的方法
2015/01/26 PHP
PHP验证码生成原理和实现
2016/01/24 PHP
PHP微信开发之微信消息自动回复下所遇到的坑
2016/05/09 PHP
Laravel学习教程之View模块详解
2017/09/18 PHP
Laravel中批量赋值Mass-Assignment的真正含义详解
2017/09/29 PHP
TNC vs BOOM BO3 第二场2.13
2021/03/10 DOTA
jQuery的12招常用技巧分享
2011/08/08 Javascript
鼠标悬浮停留三秒后自动显示大图js代码
2014/09/09 Javascript
JS中的Replace方法使用经验分享
2015/05/20 Javascript
基于JS实现简单的样式切换效果代码
2015/09/04 Javascript
详解JavaScript逻辑Not运算符
2015/12/04 Javascript
实例剖析AngularJS框架中数据的双向绑定运用
2016/03/04 Javascript
JS简单实现仿百度控制台输出信息效果
2016/09/04 Javascript
深入浅析JS是按值传递还是按引用传递(推荐)
2016/09/18 Javascript
AngularJS通过$sce输出html的方法
2016/09/22 Javascript
vue2.0 自定义组件的方法(vue组件的封装)
2018/06/05 Javascript
解决bootstrap-select 动态加载数据不显示的问题
2018/08/10 Javascript
Vue+ElementUI table实现表格分页
2019/12/14 Javascript
vue+canvas实现移动端手写签名
2020/05/21 Javascript
Javascript数组及类数组相关原理详解
2020/10/29 Javascript
Python collections模块实例讲解
2014/04/07 Python
跟老齐学Python之??碌某?? target=
2014/09/12 Python
python判断自身是否正在运行的方法
2019/08/08 Python
Python爬虫爬取Bilibili弹幕过程解析
2019/10/10 Python
HTML5+CSS3 诱人的实例:3D立方体旋转动画实例
2016/12/30 HTML / CSS
使用Html5多媒体实现微信语音功能
2019/07/26 HTML / CSS
Stubhub英国:购买体育、演唱会和剧院门票
2018/06/10 全球购物
大学生毕业自我鉴定
2013/11/06 职场文书
yy结婚证婚词
2014/01/10 职场文书
体育专业学生自我评价范文
2014/01/17 职场文书
校园演讲稿汇总
2014/05/21 职场文书
小学班级口号
2014/06/09 职场文书
企业廉洁教育心得体会
2016/01/20 职场文书
解决SpringCloud Feign传对象参数调用失败的问题
2021/06/23 Java/Android
Python+Appium自动化测试的实战
2021/06/30 Python
pandas进行数据输入和输出的方法详解
2022/03/23 Python