使用(多个)WebClient对象的最佳实践

本文关键字:最佳 对象 WebClient 多个 使用 | 更新日期: 2023-09-27 18:18:44

关于内存消耗,使用(多个)webclient的最佳实践是什么?在互联网上我读过的所有资源中,webClient对象从来没有手动释放,因此我的问题是什么时候会释放?

如果我使用多个web客户端对象从互联网获取异步数据-他们可能会,也可能不会并行运行?

使用(多个)WebClient对象的最佳实践

WebClient实现了IDisposable接口,但实际上并没有使用。它继承自组件类,需要在"事件"字段/变量中注册处置处理程序(您可以使用Reflector/ILSpy/dotPeek/等进行检查),因此垃圾收集器可能会在必要时自动释放它。你可能想在这里读一点:.NET:我需要在异步下载时保持对WebClient的引用吗?c# WebClient Memory Usage

至于使用多个WebClient对象,我不确定会使用多少内存,因为我从未尝试过在这些情况下分析或关注内存消耗。

另外,如果速度不是问题,我会使用List或Queue,这样您就可以在请求完成后一个接一个地处理请求,以防止高内存消耗。