我想找一些关于. NET 6中的ObjectPooling的代码示例/文档。
我可以看到此exists in .NET 7 via these docs,但无法升级到. NET 7。
我确实在某个地方找到了一些代码(不,我看不清在哪里,它是在我的工作电脑上,而不是家里的这台),看起来像这样:
using System.Buffers;
var sftpObjectPool = new ObjectPool<SftpClient>(() => new SftpClient(config), 50);
var sftpClient = sftpObjectPool.Get();
await sftpClient.UploadFileAsync(..);
sftpObjectPool.Return(sftpClient);
但是我在. NET BCL中找不到这个类。
这可能吗?
1条答案
按热度按时间anauzrmj1#
文档中引用的
ObjectPool<T>
是Microsoft.Extensions.ObjectPool
包的一部分,并且可以使用相当长的一段时间。它是ASP.NET核心的依赖项(至少对于第7版),但是对于其他不基于Microsoft.NET.Sdk.Web
的项目类型,您可能需要手动安装它。根据使用情况,您的应用中使用了其他一些类。
对于软件包中的
ObjectPool<T>
,类似的内容可能如下所示: