【发布时间】:2011-05-24 11:38:45
【问题描述】:
假设我在 StreamWriter 等资源上创建了一个闭包:
let currentdir = Directory.GetCurrentDirectory()
let testfile = sprintf "%s\\%s" currentdir "closuretest.txt"
let getwriter() =
let writer = new StreamWriter(testfile, false)
(fun() -> writer.Write "test")
当我完成关闭后,有没有办法关闭 StreamWriter?还是我需要用具有 Write() 方法和 Dispose() 方法的包装器对象替换闭包? (这当然是一个简单的例子。)谢谢大家。
【问题讨论】: