ObjectSpace все еще отключен в jruby?
ObjectSpace все еще отключен в jruby 9.1.5.0 (2.3.1)?
Если это не просто моя установка (Arch Linux, последняя версия) с ошибкой, я получаю подозрение, что ObjectSpace изменился в недавнем jruby: пытаясь воспроизвести поведение, описанное в вики-статье jruby о производительности, я получаю следующую реакцию:
$> jruby -O
jruby: unknown option -O
$> jruby -J-Djruby.objectspace.enabled=false
puts ObjectSpace.each_object(Class).inspect
#<Enumerator: ObjectSpace:each_object(Class)>
$> jruby -v
jruby 9.1.5.0 (2.3.1) 2016-09-07 036ce39 Java HotSpot(TM) 64-Bit Server VM 25.102-b14 on 1.8.0_102-b14 +jit [linux-x86_64]
Так какова современная ситуация? Теперь безопасно / рекомендуется использовать OpenSpace в современном jruby?
1 ответ
Решение
Он не изменился - такой же, как в предыдущем JRuby (1.7.x)
ObjectSpace
(даже если он отключен) работает для мета-классов... он используется Rails и его легко внедрить в JRuby без снижения производительности.