一个有趣的想法出现了,我宁愿这样做,但不知道它是否可能(但猜测它更接近于不可能。)
一个脚本想要做这样的事情:
process_recursively(top_item) do |item|
if item.text =~ /evil/
item.add_tag(evil)
end
end
从概念上讲,这将像这样工作:
def process_recursively(item, &block)
block.call(item)
item.children.each { |child| process_recursively(child) }
end
但问题是,真正的系统(它是用 Java 实现的,而不是 Ruby)实际上会调用来自不同 JVM 的处理项目,因此 JVM 崩溃不会破坏整个处理运行。
我知道这种事情在 RMI 还很流行的时候以一种尴尬的方式是可能的,但是有没有办法让这个疯狂的想法适用于 JRuby 之类的东西?
理想情况下,我希望它适用于任何 JSR223 脚本语言,但我不会屏住呼吸。