Supongamos que se crea un cierre sobre un recurso como un StreamWriter:F #: ¿Desechar los recursos que están dentro de un cierre?
let currentdir = Directory.GetCurrentDirectory()
let testfile = sprintf "%s\\%s" currentdir "closuretest.txt"
let getwriter() =
let writer = new StreamWriter(testfile, false)
(fun() -> writer.Write "test")
¿Hay una manera de cerrar la StreamWriter cuando he terminado con el cierre? ¿O necesito reemplazar el cierre con un objeto contenedor que tenga un método Write() y un método Dispose()? (Esto es, por supuesto, un ejemplo trivializado.) Gracias a todos.
Muchas gracias Brian por la respuesta rápida. El material F # disponible parece referirse a cierres y gestión de recursos, pero no a los dos juntos. – FSharpN00b