看板 C_Sharp 關於我們 聯絡資訊
最近在使用Vlc.Net, 主要是參考原作者在官網放的範例: https://github.com/ZeBobo5/Vlc.DotNet/wiki/Getting-started 其中,將MainThread的內容移至自己程式的函式內, 因為同時有宣告多個影像連線需求,所以將範例底端的while迴圈移除。 又於mediaPlayer.PositionChanged += (sender, e) =>內加上Snapshot, Snapshot所產生的檔案名稱也是依MAC儲存, 有將建立出來的mediaPlayer存於Dictionary,key為裝置的MAC位址。 同時建立2個連線並Snapshot時,程式貌似有機率會卡住, 既然Vlc Play後自己會內建線程,那麼這個回呼也是由不同線程所執行, 不曉得為什麼會造成Snapshot卡住,而沒有產生圖檔。 p.s. 程式中另外有條非MainThread每100毫秒讀取2個連線Snapshot所建立的圖檔各一次 ,迴圈每次都建立Image物件。 參考MSDN Class Image資訊為.. [執行緒安全] 此類型的任何 public static (在 Visual Basic 中 共用 在 Visual Basic 中) 成員皆 為安全執行緒。不保證任何執行個體成員為安全執行緒。 僅建立1個連線的情況則可以掛上1-2天都沒問題. 有請大大們解惑,謝謝:) ※ 編輯: james999 (61.230.197.165), 01/12/2018 01:34:58
yzfr6: 多執行緒 02/22 07:15