想象一下,我有一些代码可以从文件的开头到结尾读取:
while(sw.readline != null)
{
}
我希望这是完全异步的。从IHTTPAsyncHandler派生时,此代码将去哪里以及获取每行内容的代码将去哪里?
答案 0 :(得分:-2)
我最近在ASP.NET页面中添加了一些异步进程,以便在用户等待结果时允许一些长时间运行的进程。我发现IHTTPAsyncHandler非常不合适。它所做的就是允许您在页面开始处理时分离新线程。您仍然必须创建自己的线程并创建AsyncRequestResult。
相反,我最后只是在我的代码隐藏中使用了一个普通的线程,更加简洁:
using System;
using System.Web;
using System.Threading;
namespace Temp {
public partial class thread : System.Web.UI.Page {
protected void Page_Load(object sender, EventArgs e) {
Thread thread = new Thread(new ThreadStart(myAsyncProcess));
thread.Start();
}
private void myAsyncProcess() {
// Long running process
}
}
}