PipeReader.AdvanceTo 方法

定义

将管道的读取游标前进到使用的数据之后。

重载

AdvanceTo(SequencePosition)

将管道的读取游标移动到已使用的数据之后,将数据标记为已处理。

AdvanceTo(SequencePosition, SequencePosition)

将管道的读取游标移动到已使用的数据之后,将数据标记为已处理、读取和检查。

注解

将释放已使用数据的内存,不再可用。 此调用后,不得访问以前从 ReadAsync(CancellationToken) 返回的 Buffer。 检查的数据应在管道发出更多可用数据信号时与管道通信。

AdvanceTo(SequencePosition)

Source:
PipeReader.cs
Source:
PipeReader.cs
Source:
PipeReader.cs
Source:
PipeReader.cs

将管道的读取游标移动到已使用的数据之后,将数据标记为已处理。

public:
 abstract void AdvanceTo(SequencePosition consumed);
public abstract void AdvanceTo (SequencePosition consumed);
abstract member AdvanceTo : SequencePosition -> unit
Public MustOverride Sub AdvanceTo (consumed As SequencePosition)

参数

consumed
SequencePosition

标记已成功处理的数据的范围。

注解

将释放已使用数据的内存,不再可用。

此调用后,不得访问以前从 ReadAsync(CancellationToken) 返回的 Buffer

这相当于调用具有相同检查和使用位置的 AdvanceTo(SequencePosition, SequencePosition)。 检查的数据应在管道发出更多可用数据信号时与管道通信。

由于已使用的参数双精度为已检查参数,因此使用的参数应大于或等于上一次调用中对 AdvanceTo的检查位置。 否则,将引发 InvalidOperationException

适用于

AdvanceTo(SequencePosition, SequencePosition)

Source:
PipeReader.cs
Source:
PipeReader.cs
Source:
PipeReader.cs
Source:
PipeReader.cs

将管道的读取游标移动到已使用的数据之后,将数据标记为已处理、读取和检查。

public:
 abstract void AdvanceTo(SequencePosition consumed, SequencePosition examined);
public abstract void AdvanceTo (SequencePosition consumed, SequencePosition examined);
abstract member AdvanceTo : SequencePosition * SequencePosition -> unit
Public MustOverride Sub AdvanceTo (consumed As SequencePosition, examined As SequencePosition)

参数

consumed
SequencePosition

标记已成功处理的数据的范围。

examined
SequencePosition

标记已读取和检查的数据的范围。

注解

将释放已使用数据的内存,不再可用。

此调用后,不得访问以前从 ReadAsync(CancellationToken) 返回的 Buffer

检查的数据应在管道发出更多可用数据信号时与管道通信。

检查的参数应大于或等于上一个调用中对 AdvanceTo的检查位置。 否则,将引发 InvalidOperationException

适用于