【发布时间】:2012-02-26 16:18:44
【问题描述】:
我正在通过 FFI 访问 Ruby 中的 C 函数。该函数名为AllocTilts::summary。
我希望该方法不向 STDOUT 打印任何内容。但是我对 STDOUT 的临时重定向不起作用。还有什么我可以做的吗?
puts 'test outside before' #prints successfully
File.open("/var/alloc_tilts/summary_dump", "w") do |out|
stdout, $stdout = $stdout, out
puts 'test inside' #doesn't print to STDOUT as expected
AllocTilts.summary(2012, 2011) #prints undesired stuff to STDOUT
$stdout = stdout
end
puts 'test outside after' #prints successfully
【问题讨论】: