程序无法继续写入已被 vim 覆盖的文件

问题描述

vim 在 golang 写文件时保存了“./a.log”文件。 之后golang程序就不能写文件了。 没有错误消息,也没有挂起。除了保存文件外,run for 循环非常好。

有什么解决办法吗?


import (
    "fmt"
    "io"
    "os"
    "time"
)

func main() {
    var f1 *os.File

    f1,_ = os.OpenFile("./a.log",os.O_APPEND|os.O_CREATE|os.O_WRONLY,0644)

    iCnt := 0
    format := ""

    for {
        iCnt++
        format = fmt.Sprintf("aaaaaaaaaaa[%d]\r\n",iCnt)

        n,err := io.WriteString(f1,format)
        if err != nil {
            panic(err)
        }
        f1.Sync()
        fmt.Printf("Writed %d bytes\n",n)
        fmt.Printf("%v\n",f1)

        time.Sleep(3 * time.Second)

    }
}

终端1) 运行二进制文件并查看日志文件

console screenshot

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)