Julia为文件提供了open()和close()函数。有点像
finalizer(filehandle, obj -> close(obj), filehandle )
打开文件时自动实现?
答案 0 :(得分:8)
是的,这是自动完成的。但是,当对象超出范围时,不会调用终结器,而是在垃圾收集确定不再有对该对象的引用时调用终结器。但是,当您期望或希望它时,这可能不会发生。要在退出当前作用域时自动关闭文件句柄,可以使用open-do-block结构:
open("file.txt") do fh
# do stuff with open file handle `fh`
end # `fh` is closed here