2014-09-05 41 views
1

我有一個網頁應該啓動一個長時間運行的過程。在這裏長時間運行我的意思是可能需要一個小時左右。我不希望網頁在那裏呆一個小時,所以我創建了一個Process對象,不用等待就啓動它,然後返回一個「OK我開始了」的消息。 (這個過程更新了一些文件,並且我計劃有一個日誌,用戶可以檢查它是否完成,這不是問題。)我的問題是,它會在20分鐘後超時。如果我在作業中修改參數,使其在不到20分鐘的時間內運行,那麼一切正常,它會更新,獨角獸在牧場上嬉戲,而且一切都很好。但是在20分鐘的時間裏有一個暫停的時間。如何在點網過程上設置超時

我在Process上搜索了一個屬性來指定時間限制,但沒有運氣。這個限制必須在某個地方設置。任何想法在哪裏?

+0

嘗試web.config中設置<的httpRuntime executionTimeout = 「300」>。 http://msdn.microsoft.com/en-us/library/e1f13641%28v=VS.80%29.aspx – malkam 2014-09-05 19:21:52

回答

1

這不是過程問題,而是IIS在閒置一段時間後進入閒置狀態的功能,默認超時時間恰好爲20分鐘。

所以,你可以嘗試以下操作:

1)進入IIS服務器管理器 - >選擇您的應用程序池 - >選擇高級設置,並設置了空閒超時(分鐘)

2)另一個值如果您打算將您的應用程序部署到其他服務器上,而您無法更改哪些設置,則可以創建一個定時器,該定時器將每隔15分鐘對服務器執行一次ping操作,以防止它處於空閒模式。

enter image description here

+0

Aaaahhhh。我看到了這個設置,但是由於我的流程沒有變成「閒置」,所以我認爲這並不重要。我現在明白了。是的,把它設置爲40分鐘,一切似乎都起作用。 (我的工作顯然需要30分鐘才能完成。)幾乎就像一臺真正的電腦。 – Jay 2014-09-05 20:10:11