好的我有一個應用程序根據另一個應用程序創建的文件生成一些合約。觀察文件的最佳方法
我已經實現了一個filewatcher來監視正在創建的文件,然後它會啓動一個backgroundworker
進程來根據文件名創建合同。
我遇到的問題是,在後臺工作過程中,我設置EnableRaisingEvents
爲false,以便應用程序不開始處理一組不同的合同,而第一的運行(這也是停止調用後臺工作,而它正在運行,因爲它無法同時運行2件事!)。
所有工作正常,其他應用程序創建一個文件,filewatcher撿起它並開始處理,問題是,當處理完成時,filewatcher重新啓用,但我認爲它不會拿起任何創建時的文件EnableRaisingEvents
是錯誤的 - 因此,如果創建初始文件以生成合同的應用程序恰好在我的應用程序正在處理時創建另一個文件,它將會保留。那有意義嗎?什麼是最好的方法呢?
我曾經想過創建另一個進程,當初始合同創建完成後,將查找目錄中的其他文件,這些文件在filewatcher被禁用的時間點之間創建,如果沒有,則會重新啓用filewatcher但我想知道是否有更簡單的方法來做到這一點?
你可以排隊更改的文件到列表或更好的隊列然後進程隊列順序 –
2013-04-10 12:05:55