當文件上傳時,我在提交按鈕中有以下幾行代碼。因此請求會在後臺啓動並運行,並告訴用戶該文件正在處理中。瞭解C#中的IAsyncResult請求和線程#
// Prepare the query string
string arguments = string.Format(
"?guid={0}&sessionid={1}&seqstring={2}&torrstring={3}",
Server.HtmlEncode(_userGuid), Server.HtmlEncode(_guid),
Server.HtmlEncode(seqString.ToString()),
Server.HtmlEncode(TorRString.ToString()));
// Initialize web request
req = (HttpWebRequest)WebRequest.Create(
string.Format("{0}{1}", pageUrl.ToString(), arguments));
req.Method = "GET";
// Start the asynchronous request.
IAsyncResult result = (IAsyncResult)req.BeginGetResponse(
new AsyncCallback(RespCallback), null);
// this line impliments the timeout, if there is a timeout, the callback
// fires and the request becomes aborted
// ThreadPool.RegisterWaitForSingleObject(
// result.AsyncWaitHandle,
// new WaitOrTimerCallback(TimeoutCallback),
// null, DefaultTimeout, true);
給予用戶,響應文件的代碼,但有時我覺得線程死亡和數據庫沒有更新,因此出現該文件無法完成處理。我如何判斷線程是否仍在運行?用戶提交他們的代碼,如果我確實result.IsCompleted;它說結果是空的。
您使用的是哪個版本的.NET? –
我正在使用.NET 3.5 – cdub