亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

等到文件復制完成

等到文件復制完成

Go
ABOUTYOU 2021-04-09 18:15:36
我正在使用golang監視程序包來監視文件目錄。 https://github.com/radovskyb/watcher唯一的問題是,創建事件是在文件開始被復制/移動時觸發的,而不是在文件實際準備好時觸發的。我想知道在創建事件之后Go中是否有一種整潔的等待方式,直到不再寫入文件再繼續。我想這種等待很可能必須在goroutine中完成才能不阻止任何其他文件事件。簡單的例子:package mainimport (        "fmt"        "log"        "time"        "github.com/radovskyb/watcher")func main() {        w := watcher.New()        w.FilterOps(watcher.Create, watcher.Write)        go func() {                for {                        select {                        case event := <-w.Event:                                fmt.Println(event) // Print the event's info.                                if event.Op == watcher.Create {                                    // HERE WE DO STUFF                                    doStuff(event)                                }                        case err := <-w.Error:                                log.Fatalln(err)                        case <-w.Closed:                                return                        }                }        }()        // Watch this folder for changes.        if err := w.Add("./files/"); err != nil {                log.Fatalln(err)        }        // Start the watching process - it'll check for changes every 100ms.        if err := w.Start(time.Millisecond * 100); err != nil {                log.Fatalln(err)        }}謝謝!
查看完整描述

2 回答

  • 2 回答
  • 0 關注
  • 249 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號