异步获取for请求的最佳实践是什么?
我想从互联网上下载一个页面(不管是什么),尽量避免阻塞线程。
以前我认为只使用'BeginGetResponse‘和'EndGetResponse’对就足够了。但仔细观察,我也发现可以选择使用“BeginGetRequestStream”
GetRequestStream用于POST操作
为了增加混乱,我应该使用stream.BeginRead和EndRead吗?
文章建议使用Stream.BeginRead异步处理HttpResponse.GetResponseStream甚至更好
啊!怎么这么乱呀!
有人能给我指明正确的方向吗?
什么是最佳实践?
发布于 2009-02-24 08:22:06
您可以自己编写所有这些代码,也可以只使用WebClient,它为您做了大量的繁重工作。例如,要以字符串的形式下载文件,您将调用DownloadStringAsync(),它最终将触发OnDowloadStringCompleted事件。如果文件是二进制文件,您可以尝试使用DownloadDataAsync()代替。
发布于 2009-02-23 04:17:21
最后,杰弗里·里希特的博客有一篇关于HttpWebRequest和streams的一些微妙之处的文章。
发布于 2009-02-24 07:06:13
您考虑过在新线程中执行web请求吗?
http://msdn.microsoft.com/en-us/library/ms173178.aspx
https://stackoverflow.com/questions/576440
复制相似问题