ArrayPool<T>.Return(T[], Boolean) Метод
Определение
Важно!
Некоторые сведения относятся к предварительной версии продукта, в которую до выпуска могут быть внесены существенные изменения. Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых, относительно приведенных здесь сведений.
Возвращает массив в пул, полученный ранее с помощью метода Rent(Int32) в том же экземпляре ArrayPool<T>.
public abstract void Return (T[] array, bool clearArray = false);
abstract member Return : 'T[] * bool -> unit
Public MustOverride Sub Return (array As T(), Optional clearArray As Boolean = false)
Параметры
- array
- T[]
Буфер для возврата в пул, полученный ранее с помощью метода Rent(Int32).
- clearArray
- Boolean
Указывает, следует ли очищать содержимое буфера перед повторным использованием. Если clearArray
имеет значение true
, а пул сохраняет буфер для повторного использования, метод Return(T[], Boolean) очистит array
от содержимого, чтобы следующий вызывающий объект, использующий метод Rent(Int32), не увидел содержимое предыдущего вызывающего объекта. Если clearArray
имеет значение false
, а пул освобождает буфер, содержимое массива остается без изменений.
Комментарии
После возвращения буфера в пул вызывающий объект передает все права владения буфером и не должен использовать его. Ссылка, возвращаемая из заданного Rent вызова метода, должна быть возвращена Return с помощью метода только один раз. Значение по умолчанию ArrayPool<T> может удерживать возвращенный буфер, чтобы снова арендовать его, или освободить возвращенный буфер, если установлено, что в пуле уже сохранено достаточное количество буферов.