2014-10-05 111 views

回答

1

我必須假設這是針對Windows的(您可能想指定)。 Windows服務可以設置爲始終運行或運行直到完成。 Windows服務可以設置爲自動啓動或手動啓動。手動啓動有點不恰當,因爲它可以通過程序啓動。手動確實意味着它在計算機啓動時無法啓動。另一個服務選項被禁用。禁用通常用於保持惱人的服務(如搜索索引器或iTunes助手)免於浪費計算機資源。

運行所有時間的服務總是會佔用一定量的資源(CPU和內存)。如果您使用Windows服務,您的代碼可以檢查時間並在適當的時候做所需的工作。我不認爲你會這樣做,因爲它不值得增加資源使用的開銷。此外,添加代碼以記錄時間不值得你花時間。

我想你應該使用任務調度程序。通過任務計劃程序,作業只能在預定的時間開始。這項工作將一直運行到它關閉。 Windows會跟蹤它的運行時間以及是否返回錯誤(通過stderr)。我個人使用Windows任務調度程序進行一些管理任務,發現它非常有用。

如果您使用的Linux,我認爲你不是,你會想要使用cron作業。有很多關於如何做到這一點的網站,包括http://www.thesitewizard.com/general/set-cron-job.shtml

相關問題