本着instance_exec
带块的精神,有没有办法为线程做类似的事情?而不是:
def context_thread_for(object, *args, &block)
Thread.new do
object.instance_exec(*args, &block)
end
end
context_thread_for(custom_dsl_object) { dsl_method }
有没有办法将上下文传递给线程而不包装它?
尝试对不同的方法进行基准测试,因为我在某处instance_exec
读取的内容很慢,但我无法弄清楚如何做到这一点。也许使用binding
?
修改
丹尼斯,我想用它:https://github.com/aj0strow/async_enum#preventing-race-conditions