2013-09-26 77 views
0

我已經構建了一個Windows服務,它在開始時從指定目錄構建文件路徑列表。然後我對這些文件做一些處理並刪除它們。我的問題是服務建立這個列表的頻率如何?我們可以指定一個時間間隔,當這個服務將查看目錄並建立列表?Windows服務時間C#

OR

是更好,我創建一個控制檯應用程序並將其分配給調度?

+2

該服務將建立該列表,只要你做它。您可以向該服務添加一個「Timer」以按照您希望的時間間隔重建列表。創建控制檯應用程序並將其分配給調度程序並不更好。它也不會更糟。 –

+2

請參閱'FileSystemWatcher'獲取替代方法。 –

+0

FileSystemWatcher有什麼問題? –

回答

1

您可以在應用程序中設置計時器並隨時運行您的方法。看到這個問題的答案很好。

Best Timer for using in a Windows service

一些其他有用的MSDN上構建服務,包括OnStartOnStop筆記,你可能要採取的優勢。

ServiceBase

@Marius也使得有關FileSystemWatcher大點,這一個偉大而經常被忽視的一塊淨的...... FileSystemWatcher

+0

這不是一個windows服務的準確描述。 –

+0

downvote removed –

+0

道歉...你是對的。我編輯了它。無論如何,控制檯應用程序通常就是人們傾向於開始創建新服務的地方。 – tigerswithguitars

0

這很可能是一個完美的使用情況下的FileSystemWatcher其中「監聽文件系統更改通知,並在目錄或目錄中的文件發生更改時引發事件。「通過使用它,您可以避免必須手動安排文件或目錄檢查。

+0

不知道他的應用程序的目的是什麼,你怎麼知道實時監控是一個完美的解決方案? –

+0

@CareyGregory我不這樣做,因此「最有可能」,而不是「絕對」。 –

+0

@MariusSchulz後臺進程一次轉儲大約3K個文件。我做每個文件的數據庫處理。不想使用在查看單個文件時激活的FileSystemWatcher。然後我需要3K DB連接。 –