2012-11-27 192 views
-1

我正在使用.net4.0框架 我正在使用c#的Web項目工作# 我想提出一些請求,它會事先填充緩存中的一些項目。調用方法aspx異步

Ex。 用戶來到應用程序的主頁。 [我會寫一些代碼在主頁(.ASPX),它會調用一些方法,它會從磁盤讀取一些文件,並將它們放入緩存中,雖然我不需要此主頁上的緩存...在這一點上,作爲閱讀從磁盤文件將是有些冗長操作...我會完全加載主頁,而無需等待響應的方法(這是會從磁盤中讀取文件) 喜歡的東西

function page_load{ 

CacheGenerator.CreateCache();//this is going to be heavy operation..i don't want       to wait for this operation to complete 
repose.write("Hello world:); // this statement should run moment after above function is called 
} 

還有一我們可以在不使用線程的情況下做到這一點。

回答

0

任何異步是在這樣或那樣的「使用線程」。

更重要的是,你不應該從一個頁面中啓動任何異步操作。該頁面僅在請求期間存在於內存中。頁面不再存在於內存中後,異步操作可能會完成。

您可以使用Task類從在Global.asax中的Application_Start事件開始的異步操作。

+0

雅你是對的頁面可能不存在於內存中...我會做緩存的人口[我不需要這個頁面在方法代碼ASPX調用。我認爲這是像調用WCF單向服務這是可能的 –