detecte as alterações do arquivo em Go usando o status Polling
em Go, você pode detectar quando um arquivo muda usando a pesquisa de status. Embora o Go não ofereça um equivalente direto à função unix fcntl () para notificações de alteração de arquivo, a pesquisa de status fornece uma solução de plataforma cruzada:
func watchFile(filePath string) error { initialStat, err := os.Stat(filePath) if err != nil { return err } for { stat, err := os.Stat(filePath) if err != nil { return err } if stat.Size() != initialStat.Size() || stat.ModTime() != initialStat.ModTime() { break } time.Sleep(1 * time.Second) } return nil }
USAGE:
doneChan := make(chan bool) go func(doneChan chan bool) { defer func() { doneChanEsta solução não oferece a eficiência de uma chamada do sistema, mas fornece uma abordagem simples que funciona em todas as plataformas e pode ser suficiente para vários casos de uso.
Isenção de responsabilidade: Todos os recursos fornecidos são parcialmente provenientes da Internet. Se houver qualquer violação de seus direitos autorais ou outros direitos e interesses, explique os motivos detalhados e forneça prova de direitos autorais ou direitos e interesses e envie-a para o e-mail: [email protected]. Nós cuidaremos disso para você o mais rápido possível.
Copyright© 2022 湘ICP备2022001581号-3