使用Open打开一个文本文件,在不主动调用file.Close()时,也没有写到defer中,就是代码没有关闭这一步操作.并且一直在写入文件内容
当程序退出时(正常退出,或者遇到异常非正常退出),那个打开的文件会发生什么?
会丢失部分写入的数据吗? 或者文件损坏或者其他?
使用Open打开一个文本文件,在不主动调用file.Close()时,也没有写到defer中,就是代码没有关闭这一步操作.并且一直在写入文件内容
当程序退出时(正常退出,或者遇到异常非正常退出),那个打开的文件会发生什么?
会丢失部分写入的数据吗? 或者文件损坏或者其他?
4 回答962 阅读
2 回答613 阅读
2 回答429 阅读
进程退出时操作系统会回收给进程的所有资源。
丢不丢失数据要看你有没有手动调用
Flush方法一般来说
Write是写入缓冲区,Flush才是罗盘一般情况下请手动调用
file.Close(),不然你进程不结束,一直占着