问题:我需要从不同的主机下载数百张图片.每个主机有20到数百个图像.
解决方案:new WebClient每次需要通过WebClient DownloadData方法下载图像时使用.
或者更好的是保持打开套接字连接池并使用较低级别的调用发出http请求?
打开/关闭tcp连接是否昂贵(我假设这是WebClient所做的),因此使用池声音效率更高?
我相信使用的底层基础设施WebClient已经集中了HTTP连接,所以没有必要这样做.你可能想要使用Wireshark这样的东西检查一些示例网址.
从根本上说,我采用与其他编程任务相同的方法 - 以最简单的方式编写代码,然后检查它是否能够满足您的需求.如果确实如此,那就完成了.如果没有,使用合适的工具(网络分析仪等)制定出为什么它不执行不够好,并且只使用它是否解决了这个问题更复杂的代码.
我的经验是,WebClient如果它不是你需要的那样就好了 - 但是它并没有给你那么多细粒度的控制WebRequest.如果您不需要该控制,请继续WebClient.
| 归档时间: |
|
| 查看次数: |
604 次 |
| 最近记录: |