DelegateReaderStream - конструктор
Создаёт экземпляр класса с указанием функции, загружающей данные для потока.
Пространство имён: Tessa.Platform.IOСборка: Tessa (в Tessa.dll) Версия: 4.0.4
public DelegateReaderStream(
long length,
Func<int, CancellationToken, ValueTask<(byte[] , int actualSize)>> readAsyncFunc,
Func<ValueTask>? endReadAsyncFunc = null,
int bufferSize = 1000000
)
Public Sub New (
length As Long,
readAsyncFunc As Func(Of Integer, CancellationToken, ValueTask(Of ( As Byte(), actualSize As Integer))),
Optional endReadAsyncFunc As Func(Of ValueTask) = Nothing,
Optional bufferSize As Integer = 1000000
)
public:
DelegateReaderStream(
long long length,
Func<int, CancellationToken, ValueTask<ValueTuple<array<unsigned char>^, int>>>^ readAsyncFunc,
Func<ValueTask>^ endReadAsyncFunc = nullptr,
int bufferSize = 1000000
)
new :
length : int64 *
readAsyncFunc : Func<int, CancellationToken, ValueTask<ValueTuple<byte[], int>>> *
?endReadAsyncFunc : Func<ValueTask> *
?bufferSize : int
(* Defaults:
let _endReadAsyncFunc = defaultArg endReadAsyncFunc null
let _bufferSize = defaultArg bufferSize 1000000
*)
-> DelegateReaderStream
Параметры
- length Int64
-
Фактическая длина потока, которая будет прочитана. Поток сообщает это значение
в качестве своего размера Length и не выполняет чтение за пределами этой величины.
Если переданное значение меньше нуля, то считается, что размер потока неизвестен.
- readAsyncFunc FuncInt32, CancellationToken, ValueTaskValueTupleByte, Int32
-
Функция, выполняющая асинхронную загрузку данных для потока. Возвращает массив байт - буфер, и число -
фактическое число прочитанных байт в буфере, которое было записано данными.
- endReadAsyncFunc FuncValueTask (Optional)
-
Функция, вызываемая при закрытии потока, которая выполняет очистку ресурсов, в т.ч. асинхронную.
Может быть равна null, если выполнять действия не требуется.
- bufferSize Int32 (Optional)
- Размер буфера, который наполняется за один запрос к функции readAsyncFunc.
ArgumentOutOfRangeException | Размер буфера bufferSize не является положительным числом. |