設定「排定的工作」需注意工作執行的時間

分享到噗浪!

我之前寫過一篇【排定的工作設定週期最短只有每日嗎?】文章,當時我們就是寫了一支需要「每分鐘」執行一次的程式,執行了一年多沒啥問題出現過,但最近卻出問題了,程式竟然自動停止執行,導致服務無法正常運作,研究後才發現原來該程式從早上執行完後到現在一直在執行,沒有停止過,所以才導致排程的工作就此停擺。

今天經研究後發現,原來是我們的程式在建立 TCP/IP 連線時,遠端電腦可能當時發生了些異常行為,導致連上後沒有任何回應,以致於我們的程式就一直在等待伺服器回應,一直等...一直等...  = =''

發現問題的根源後,立即想到有三種解決方法:

1. 利用 Windows 工作管理員 手動將執行中的程式殺掉,接著排程就會繼續進行了!

2. 修改程式碼,加入 Timeout 功能。我直接利用前幾天介紹的執行緒幫我完成這個目的:

static void Main(string[] args)
{
	Thread t = new Thread(new ThreadStart(DoWorks));
	t.Start();
	t.Join(1000 * 60 * 5);
}

3. 修改 排定的工作 中的設定,設定 5 分鐘後停止排定的工作 ( 這也是最簡單的方式 )

改 排定的工作 中的設定,設定 5 分鐘後停止排定的工作

  

此文章由 will 發表於 2009/3/11 下午 10:57:33

永久連結 | 評論 (2) | 此文章的RSSRSS comment feed |

分類: 心得分享 | 系統管理

標籤: , ,

評論

三月 12. 2009 00:11

demo

是因為每分鐘就會執行一次,所以可以設定五分鐘關閉,他下一分鐘又會自動啟動嗎?

demo 台灣

三月 12. 2009 09:30

will

是的

will 台灣

新增評論


( 您輸入的Email不會顯示於網站上 )

  Country flag

biuquote
  • 評論
  • 線上預覽
Loading