PipeStream 类

定义

公开管道周围的 Stream 对象,该对象同时支持匿名管道和命名管道。

public ref class PipeStream abstract : System::IO::Stream
public abstract class PipeStream : System.IO.Stream
type PipeStream = class
    inherit Stream
Public MustInherit Class PipeStream
Inherits Stream
继承
PipeStream
继承
派生

注解

PipeStream为.NET Framework中的命名管道操作和匿名管道操作提供基类。 将 NamedPipeServerStreamNamedPipeClientStream 类用于命名管道操作。 将 AnonymousPipeServerStreamAnonymousPipeClientStream 类用于匿名管道操作。

有关管道的详细信息,请参阅 管道。 有关匿名管道的示例,请参阅 如何:使用匿名管道进行本地进程间通信。 有关命名管道的示例,请参阅 如何:使用命名管道进行网络进程间通信

构造函数

PipeStream(PipeDirection, Int32)

使用指定的 PipeDirection 值和缓冲区大小初始化 PipeStream 类的一个新实例。

PipeStream(PipeDirection, PipeTransmissionMode, Int32)

使用指定的 PipeStreamPipeDirection 和缓冲区大小初始化 PipeTransmissionMode 类的一个新实例。

属性

CanRead

获取一个值,该值指示当前流是否支持读操作。

CanSeek

获取一个值,该值指示当前流是否支持查找操作。

CanTimeout

获取一个值,该值确定当前流是否可以超时。

(继承自 Stream)
CanWrite

获取一个值,该值指示当前流是否支持写操作。

InBufferSize

获取管道的入站缓冲区的大小(以字节为单位)。

IsAsync

获取一个值,该值指示 PipeStream 对象是异步打开还是同步打开。

IsConnected

获取或设置一个值,该值指示是否已连接 PipeStream 对象。

IsHandleExposed

获取一个值,该值指示是否公开了 PipeStream 对象的句柄。

IsMessageComplete

获取一个值,该值指示最近的读操作返回的消息中是否有更多数据。

Length

获取流长度(以字节为单位)。

OutBufferSize

获取管道的出站缓冲区的大小(以字节为单位)。

Position

获取或设置当前流的当前位置。

ReadMode

获取或设置 PipeStream 对象的读取模式。

ReadTimeout

获取或设置一个值(以毫秒为单位),该值确定流在超时前将尝试读取的时间。

(继承自 Stream)
SafePipeHandle

获取当前 PipeStream 对象所封装的本地管道末端的安全句柄。

TransmissionMode

获取当前管道支持的管道传输模式。

WriteTimeout

获取或设置一个值(以毫秒为单位),该值确定流在超时前将尝试写入多长时间。

(继承自 Stream)

方法

BeginRead(Byte[], Int32, Int32, AsyncCallback, Object)

开始异步读操作。

BeginRead(Byte[], Int32, Int32, AsyncCallback, Object)

开始异步读操作。 (请考虑改用 ReadAsync(Byte[], Int32, Int32)。)

(继承自 Stream)
BeginWrite(Byte[], Int32, Int32, AsyncCallback, Object)

开始异步写操作。

BeginWrite(Byte[], Int32, Int32, AsyncCallback, Object)

开始异步写操作。 (请考虑改用 WriteAsync(Byte[], Int32, Int32)。)

(继承自 Stream)
CheckPipePropertyOperations()

验证管道是否处于可供获取或设置属性的正确状态。

CheckReadOperations()

验证管道是否处于可供进行读操作的连接状态。

CheckWriteOperations()

验证管道是否处于可供进行写操作的连接状态。

Close()

关闭当前流并释放与之关联的所有资源(如套接字和文件句柄)。 不直接调用此方法,而应确保流得以正确释放。

(继承自 Stream)
CopyTo(Stream)

从当前流中读取字节并将其写入到另一流中。 这两个流位置都以复制的字节数为高级。

(继承自 Stream)
CopyTo(Stream, Int32)

使用指定的缓冲区大小,从当前流中读取字节并将其写入到另一流中。 这两个流位置都以复制的字节数为高级。

(继承自 Stream)
CopyToAsync(Stream)

从当前流中异步读取字节并将其写入到另一个流中。 这两个流位置都以复制的字节数为高级。

(继承自 Stream)
CopyToAsync(Stream, CancellationToken)

通过指定的取消令牌,从当前流中异步读取字节并将其写入到另一个流中。 这两个流位置都以复制的字节数为高级。

(继承自 Stream)
CopyToAsync(Stream, Int32)

使用指定的缓冲区大小,从当前流中异步读取字节并将其写入到另一流中。 这两个流位置都以复制的字节数为高级。

(继承自 Stream)
CopyToAsync(Stream, Int32, CancellationToken)

使用指定的缓冲区大小和取消令牌,从当前流中异步读取字节并将其写入到另一个流中。 这两个流位置都以复制的字节数为高级。

(继承自 Stream)
CreateObjRef(Type)

创建一个对象,该对象包含生成用于与远程对象进行通信的代理所需的全部相关信息。

(继承自 MarshalByRefObject)
CreateWaitHandle()
已过时.
已过时.
已过时.

分配 WaitHandle 对象。

(继承自 Stream)
Dispose()

释放由 Stream 使用的所有资源。

(继承自 Stream)
Dispose(Boolean)

释放 PipeStream 类使用的非托管资源,并可以选择释放托管资源。

DisposeAsync()

异步释放 Stream 使用的非托管资源。

(继承自 Stream)
EndRead(IAsyncResult)

结束挂起的异步读取请求。

EndRead(IAsyncResult)

等待挂起的异步读取完成。 (请考虑改用 ReadAsync(Byte[], Int32, Int32)。)

(继承自 Stream)
EndWrite(IAsyncResult)

结束挂起的异步写入请求。

EndWrite(IAsyncResult)

结束异步写操作。 (请考虑改用 WriteAsync(Byte[], Int32, Int32)。)

(继承自 Stream)
Equals(Object)

确定指定对象是否等于当前对象。

(继承自 Object)
Flush()

清除当前流的缓冲区,并使所有缓冲的数据都写入到基础设备。

FlushAsync()

异步清除此流的所有缓冲区并导致所有缓冲数据都写入基础设备中。

(继承自 Stream)
FlushAsync(CancellationToken)

异步清除当前流的缓冲区,并使所有缓冲的数据都写入到基础设备。

FlushAsync(CancellationToken)

异步清理此流的所有缓冲区,导致所有缓冲数据都写入基础设备,并且监控取消请求。

(继承自 Stream)
GetAccessControl()

获取一个 PipeSecurity 对象,该对象封装当前 PipeStream 对象所描述管道的访问控制列表 (ACL) 项。

GetHashCode()

作为默认哈希函数。

(继承自 Object)
GetLifetimeService()
已过时.

检索控制此实例的生存期策略的当前生存期服务对象。

(继承自 MarshalByRefObject)
GetType()

获取当前实例的 Type

(继承自 Object)
InitializeHandle(SafePipeHandle, Boolean, Boolean)

从指定的 PipeStream 对象中初始化 SafePipeHandle 对象。

InitializeLifetimeService()
已过时.

获取生存期服务对象来控制此实例的生存期策略。

(继承自 MarshalByRefObject)
MemberwiseClone()

创建当前 Object 的浅表副本。

(继承自 Object)
MemberwiseClone(Boolean)

创建当前 MarshalByRefObject 对象的浅表副本。

(继承自 MarshalByRefObject)
ObjectInvariant()
已过时.

提供对 Contract 的支持。

(继承自 Stream)
Read(Byte[], Int32, Int32)

从指定长度的指定位置开始,从流中读取一个字节块,并将数据写入指定的缓冲区。

Read(Span<Byte>)

从当前流中读取一个字节序列,将其写入字节数组,并按读取的字节数向前移动流中的位置。

Read(Span<Byte>)

当在派生类中重写时,从当前流读取字节序列,并将此流中的位置提升读取的字节数。

(继承自 Stream)
ReadAsync(Byte[], Int32, Int32)

从当前流异步读取字节序列,并将流中的位置提升读取的字节数。

(继承自 Stream)
ReadAsync(Byte[], Int32, Int32, CancellationToken)

从指定字节数的指定位置开始,将当前流中的字节序列异步读取到字节数组,按读取的字节数向前移动流中的位置,并监视取消请求。

ReadAsync(Byte[], Int32, Int32, CancellationToken)

从当前流异步读取字节的序列,将流中的位置提升读取的字节数,并监视取消请求。

(继承自 Stream)
ReadAsync(Memory<Byte>, CancellationToken)

从当前流异步读取字节的序列,将其写入字节内存范围,按读取的字节数向前移动流中的位置,并监视取消请求。

ReadAsync(Memory<Byte>, CancellationToken)

从当前流异步读取字节的序列,将流中的位置提升读取的字节数,并监视取消请求。

(继承自 Stream)
ReadAtLeast(Span<Byte>, Int32, Boolean)

从当前流中至少读取最小字节数,并按读取的字节数提升流中的位置。

(继承自 Stream)
ReadAtLeastAsync(Memory<Byte>, Int32, Boolean, CancellationToken)

从当前流异步读取至少最小字节数,将流中的位置按读取的字节数前进,并监视取消请求。

(继承自 Stream)
ReadByte()

从管道读取字节。

ReadExactly(Byte[], Int32, Int32)

count从当前流中读取字节数,并提升流中的位置。

(继承自 Stream)
ReadExactly(Span<Byte>)

从当前流中读取字节,并推进流中的位置, buffer 直到 填充 。

(继承自 Stream)
ReadExactlyAsync(Byte[], Int32, Int32, CancellationToken)

从当前流异步读取 count 字节数,推进流中的位置,并监视取消请求。

(继承自 Stream)
ReadExactlyAsync(Memory<Byte>, CancellationToken)

从当前流异步读取字节,推进流中的位置,直到 buffer 填充,并监视取消请求。

(继承自 Stream)
Seek(Int64, SeekOrigin)

将当前流的当前位置设置为指定值。

SetAccessControl(PipeSecurity)

PipeSecurity 对象所指定的访问控制列表 (ACL) 项应用于由当前 PipeStream 对象指定的管道。

SetLength(Int64)

将当前流的长度设为指定值。

ToString()

返回表示当前对象的字符串。

(继承自 Object)
WaitForPipeDrain()

等待管道另一端读取所有发送的字节。

Write(Byte[], Int32, Int32)

使用缓冲区中的数据将字节块写入当前流。

Write(ReadOnlySpan<Byte>)

将字节序列写入当前流,并按写入的字节数向前调整流的当前位置。

Write(ReadOnlySpan<Byte>)

当在派生类中重写时,向当前流中写入字节序列,并将此流中的当前位置提升写入的字节数。

(继承自 Stream)
WriteAsync(Byte[], Int32, Int32)

将字节序列异步写入当前流,并将流的当前位置提升写入的字节数。

(继承自 Stream)
WriteAsync(Byte[], Int32, Int32, CancellationToken)

从字节数组的指定位置开始异步写入指定字节数,按写入的字节数向前移动此流中的当前位置,并监视取消请求。

WriteAsync(Byte[], Int32, Int32, CancellationToken)

将字节的序列异步写入当前流,将该流中的当前位置向前移动写入的字节数,并监视取消请求。

(继承自 Stream)
WriteAsync(ReadOnlyMemory<Byte>, CancellationToken)

将字节的序列异步写入当前流,将该流中的当前位置向前移动写入的字节数,并监视取消请求。

WriteAsync(ReadOnlyMemory<Byte>, CancellationToken)

将字节的序列异步写入当前流,将该流中的当前位置向前移动写入的字节数,并监视取消请求。

(继承自 Stream)
WriteByte(Byte)

将字节写入当前流。

扩展方法

GetAccessControl(PipeStream)

返回管道流的安全信息。

SetAccessControl(PipeStream, PipeSecurity)

更改现有管道流的安全属性。

ConfigureAwait(IAsyncDisposable, Boolean)

配置如何执行从异步可处置项返回的任务的等待。

适用于