C# ArrayPool的利用

C# ArrayPool的利用,c#,.net-core,C#,.net Core,据我所知,ArrayPool类仅对池阵列实现 我可以使用ArrayPool实现来池对象(而不是数组)吗?我不明白为什么不能,只是它可能返回一个比我请求的数组大的数组,这有点奇怪 我在想这样的事情: 公共类工作者 { ArrayPool通道; 公职人员() { 通道=ArrayPool.Shared; } 公共异步任务执行方法(字符串消息) { //这里有点奇怪。。。 var rentedChannels=channels.Rent(1); 等待租用频道[0]。DoWork(); 频道。返回(租用

据我所知,
ArrayPool
类仅对池阵列实现

我可以使用
ArrayPool
实现来池对象(而不是数组)吗?我不明白为什么不能,只是它可能返回一个比我请求的数组大的数组,这有点奇怪

我在想这样的事情:

公共类工作者
{
ArrayPool通道;
公职人员()
{
通道=ArrayPool.Shared;
}
公共异步任务执行方法(字符串消息)
{
//这里有点奇怪。。。
var rentedChannels=channels.Rent(1);
等待租用频道[0]。DoWork();
频道。返回(租用频道);
}
}

为方便起见,是指向实现
ArrayPool

的链接吗?似乎您正在寻找的可能是
ObjectPool

参见示例


希望有帮助

看来您正在寻找的可能是
ObjectPool

参见示例


希望有帮助

ArrayPool
是一个抽象类。您的示例代码无法编译。你可以随心所欲地实现它。就像@DanielMann一样,你没有正确地实现它。此外,对于对象,需要使用不同的类型。请参见下面的
ArrayPool
是一个抽象类。您的示例代码无法编译。你可以随心所欲地实现它。就像@DanielMann一样,你没有正确地实现它。此外,对于对象,需要使用不同的类型。见下文