【发布时间】:2011-08-15 04:07:58
【问题描述】:
鉴于此代码,我可以在这方面使用一些帮助:
result1, result2, result3 = do_stuff {
method_1
method_2
method_3
}
我希望能够编写一个名为 do_stuff 的方法,该方法可以单独调用该块的每一行并为每一行/块返回一个结果。可以做到吗?我会以错误的方式解决这个问题吗?我在想这样的事情(根本不起作用)。
def do_stuff(&block)
block.each_block do |block|
block.call
end
end
编辑:我想要完成的是能够在方法“do_stuff”中并行运行每个方法/块调用(在它自己的线程中),并在每个方法调用周围添加一些日志记录。
【问题讨论】:
-
也许您可以告诉我们您真正想要完成的工作。
-
确实,因为简短的回答是“否”:-)
-
我希望能够在方法“do_stuff”中并行运行每个方法/块调用(在它自己的线程中),并在每个方法调用周围添加一些日志记录。
标签: ruby lambda closures block proc-object