PipeStream 类
定义
重要
一些信息与预发行产品相关,相应产品在发行之前可能会进行重大修改。 对于此处提供的信息,Microsoft 不作任何明示或暗示的担保。
在管道周围公开一个 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
- 继承
- 派生
注解
在 .NET Framework 中,PipeStream 类提供命名管道和匿名管道的基类。 使用 NamedPipeServerStream 和 NamedPipeClientStream 类进行命名管道操作。 使用AnonymousPipeServerStream类和AnonymousPipeClientStream类进行匿名管道操作。
有关管道的详细信息,请参阅 管道。 有关匿名管道的示例,请参阅 How to: Use Anonymous Pipes for Local Interprocess Communication. 有关命名管道的示例,请参阅 How to: Use Named Pipes for Network Interprocess Communication.
构造函数
| 名称 | 说明 |
|---|---|
| PipeStream(PipeDirection, Int32) |
使用指定的PipeDirection值和缓冲区大小初始化类的新实例PipeStream。 |
| PipeStream(PipeDirection, PipeTransmissionMode, Int32) |
使用指定的PipeDirection缓冲区PipeTransmissionMode大小初始化类的新实例PipeStream。 |
属性
| 名称 | 说明 |
|---|---|
| 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) |
开始异步读取操作。 |
| BeginWrite(Byte[], Int32, Int32, AsyncCallback, Object) |
开始异步写入操作。 |
| CheckPipePropertyOperations() |
验证管道是否处于正确的状态以获取或设置属性。 |
| CheckReadOperations() |
验证管道是否处于已连接状态进行读取操作。 |
| CheckWriteOperations() |
验证管道是否处于写入操作的连接状态。 |
| Close() |
关闭当前流并释放与当前流关联的任何资源(如套接字和文件句柄)。 请确保流已正确释放,而不是调用此方法。 (继承自 Stream) |
| CopyTo(Stream, Int32) |
从当前流中读取字节,并使用指定的缓冲区大小将其写入另一个流。 这两个流位置都是按复制的字节数进行高级的。 (继承自 Stream) |
| CopyTo(Stream) |
从当前流中读取字节并将其写入另一个流。 这两个流位置都是按复制的字节数进行高级的。 (继承自 Stream) |
| CopyToAsync(Stream, CancellationToken) |
使用指定的取消标记异步读取当前流中的字节并将其写入另一个流。 这两个流位置都是按复制的字节数进行高级的。 (继承自 Stream) |
| CopyToAsync(Stream, Int32, CancellationToken) |
使用指定的缓冲区大小和取消令牌异步读取当前流中的字节并将其写入另一个流。 这两个流位置都是按复制的字节数进行高级的。 (继承自 Stream) |
| CopyToAsync(Stream, Int32) |
使用指定的缓冲区大小异步读取当前流中的字节并将其写入另一个流。 这两个流位置都是按复制的字节数进行高级的。 (继承自 Stream) |
| CopyToAsync(Stream) |
从当前流异步读取字节并将其写入另一个流。 这两个流位置都是按复制的字节数进行高级的。 (继承自 Stream) |
| CreateObjRef(Type) |
创建一个对象,其中包含生成用于与远程对象通信的代理所需的所有相关信息。 (继承自 MarshalByRefObject) |
| CreateWaitHandle() |
已过时.
分配对象 WaitHandle 。 (继承自 Stream) |
| Dispose() |
释放该 Stream命令使用的所有资源。 (继承自 Stream) |
| Dispose(Boolean) |
释放类使用 PipeStream 的非托管资源,并选择性地释放托管资源。 |
| DisposeAsync() |
异步释放由 < |
| EndRead(IAsyncResult) |
结束挂起的异步读取请求。 |
| EndWrite(IAsyncResult) |
结束挂起的异步写入请求。 |
| Equals(Object) |
确定指定的对象是否等于当前对象。 (继承自 Object) |
| Flush() |
清除当前流的缓冲区,并导致任何缓冲数据写入基础设备。 |
| FlushAsync() |
异步清除此流的所有缓冲区,并导致任何缓冲数据写入基础设备。 (继承自 Stream) |
| 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() |
已过时.
提供对 a Contract. (继承自 Stream) |
| Read(Byte[], Int32, Int32) |
从流中读取字节块,并将数据写入指定缓冲区,从指定长度的指定位置开始。 |
| Read(Span<Byte>) |
从当前流中读取字节序列,将其写入字节数组,并通过读取的字节数推进流中的位置。 |
| ReadAsync(Byte[], Int32, Int32, CancellationToken) |
将当前流中的字节序列异步读取到从指定字节数开始的字节数组,按读取的字节数推进流中的位置,并监视取消请求。 |
| ReadAsync(Byte[], Int32, Int32, CancellationToken) |
从当前流异步读取字节序列,按读取的字节数推进流中的位置,并监视取消请求。 (继承自 Stream) |
| ReadAsync(Byte[], Int32, Int32) |
从当前流异步读取字节序列,并通过读取的字节数推进流中的位置。 (继承自 Stream) |
| ReadAsync(Memory<Byte>, CancellationToken) |
从当前流异步读取字节序列,将其写入字节内存范围,按读取的字节数推进流中的位置,并监视取消请求。 |
| ReadByte() |
从管道读取字节。 |
| Seek(Int64, SeekOrigin) |
将当前流的当前位置设置为指定值。 |
| SetAccessControl(PipeSecurity) |
将对象指定的 PipeSecurity 访问控制列表(ACL)条目应用于当前 PipeStream 对象指定的管道。 |
| SetLength(Int64) |
将当前流的长度设置为指定值。 |
| ToString() |
返回一个表示当前对象的字符串。 (继承自 Object) |
| WaitForPipeDrain() |
等待管道的另一端读取所有发送的字节。 |
| Write(Byte[], Int32, Int32) |
使用缓冲区中的数据将字节块写入当前流。 |
| Write(ReadOnlySpan<Byte>) |
将字节序列写入当前流,并通过写入的字节数推进此流中的当前位置。 |
| WriteAsync(Byte[], Int32, Int32, CancellationToken) |
从从指定位置开始的字节数组异步写入指定的字节数,按写入的字节数推进此流中的当前位置,并监视取消请求。 |
| WriteAsync(Byte[], Int32, Int32, CancellationToken) |
将字节序列异步写入当前流,按写入的字节数推进此流中的当前位置,并监视取消请求。 (继承自 Stream) |
| WriteAsync(Byte[], Int32, Int32) |
以异步方式将字节序列写入当前流,并通过写入的字节数推进此流中的当前位置。 (继承自 Stream) |
| WriteAsync(ReadOnlyMemory<Byte>, CancellationToken) |
将字节序列异步写入当前流,按写入的字节数推进此流中的当前位置,并监视取消请求。 |
| WriteByte(Byte) |
将字节写入当前流。 |
扩展方法
| 名称 | 说明 |
|---|---|
| ConfigureAwait(IAsyncDisposable, Boolean) |
配置如何执行从异步可释放项返回的任务的 await。 |