嘻皮客娱乐学习网

标题: 介绍一下Ruby的多线程处理 [打印本页]

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




欢迎光临 嘻皮客娱乐学习网 (http://www.xipick.com/) Powered by Discuz! X3.3