文件名称:async_horror:使用异步进行实验
文件大小:334KB
文件格式:ZIP
更新时间:2024-05-20 06:00:19
Ruby
艾森恐怖片 使用异步和Ruby进行实验 请参阅提交历史记录以查找实验进展。 学问 实验1:线程过多 当线程数> 5时,性能会严重下降(类似于同步,有时甚至更差) 使用小于等于5的线程池时,处理完成速度最多可提高50倍... 但是,所有参与者都在主线程完成之前完成了吗? 需要实验。 我的猜测不是。 专家怎么说: “ ...并发是指两个任务可以在重叠的时间段内开始,运行和完成。但是,这并不一定意味着它们将同时运行(例如,单个线程上有多个线程)内核机器。相反,并行是指两个任务在字面上同时运行(例如,多核处理器上的多个线程)” 为什么大量线程的性能很差? “答案是许多Ruby程序员赖以生存的祸根,是Global Interpreter Lock(GIL)。多亏了GIL,CRuby(MRI实现)才真正不支持线程...使用GIL的解释器即使在多核处理器上运行,也总是一次只允许一个线程和一个