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