Tag: mri

MRI和YARV Ruby实现 – Ruby 1.9中发生了什么?

据我了解,在Ruby 1.9之前,MRI和YARV是Ruby编程语言的两个独立实现。 Ruby 1.9版本究竟发生了什么变化? MRI放弃了YARV吗? 或者这两个代码库是以某种方式合并的? 我见过1.9以后的Ruby版本被称为“MRI”和“YARV” – 这些名称中的哪一个是正确的(或者它们都是)?

MRIruby穿线和性能

关于SO的第一个问题,但我已经潜伏了很长时间,所以如果我违反任何规则或发布垃圾问题,你将不得不原谅我。 我正在努力更好地理解线程,我决定测试MRI,看看它的表现如何。 给定以下代码(和输出),为什么线程操作比非线程变体慢得多? 码 class Benchmarker def self.go puts ‘———-Benchmark Start———-‘ start_t = Time.now yield end_t = Time.now puts “Operation Took: #{end_t – start_t} seconds” puts ‘———-Benchmark End————‘ end end # using mutex puts ‘Benchmark 1 (threaded, mutex):’ Benchmarker.go do array = [] mutex = Mutex.new 5000.times.map do Thread.new do mutex.synchronize do 1000.times do array […]

使用Puma运行JRuby与最新的核磁共振成像仍然有好处吗?

我正在考虑将我们的ruby解释器更新为JRuby,因为我们必须从我们的应用程序中删除任何2.x特定语法并采用ruby 1.9.3兼容性,因此非常头疼。 哪个不是世界末日。 当运行应用程序时,我发现我们不能在群集模式下使用Puma。 问题是,鉴于过去几年MRI的所有修复和变化,“真实线程”仍然有效的好处是什么? 更新 为了使其更加客观,问题是,“最新版本的MRI是否否定了采用JRuby来实现本机线程为您提供的相同优势的必要性?”