dotnet-core/release-notes/1.0/1.0.0-api/1.0.0-api_System.IO.Pipes.md
2017-07-05 14:24:38 -07:00

103 lines
5.8 KiB
Markdown

# System.IO.Pipes
``` diff
+namespace System.IO.Pipes {
+ public sealed class AnonymousPipeClientStream : PipeStream {
+ public AnonymousPipeClientStream(PipeDirection direction, SafePipeHandle safePipeHandle);
+ public AnonymousPipeClientStream(PipeDirection direction, string pipeHandleAsString);
+ public AnonymousPipeClientStream(string pipeHandleAsString);
+ public override PipeTransmissionMode ReadMode { set; }
+ public override PipeTransmissionMode TransmissionMode { get; }
+ ~AnonymousPipeClientStream();
+ }
+ public sealed class AnonymousPipeServerStream : PipeStream {
+ public AnonymousPipeServerStream();
+ public AnonymousPipeServerStream(PipeDirection direction);
+ public AnonymousPipeServerStream(PipeDirection direction, SafePipeHandle serverSafePipeHandle, SafePipeHandle clientSafePipeHandle);
+ public AnonymousPipeServerStream(PipeDirection direction, HandleInheritability inheritability);
+ public AnonymousPipeServerStream(PipeDirection direction, HandleInheritability inheritability, int bufferSize);
+ public SafePipeHandle ClientSafePipeHandle { get; }
+ public override PipeTransmissionMode ReadMode { set; }
+ public override PipeTransmissionMode TransmissionMode { get; }
+ protected override void Dispose(bool disposing);
+ public void DisposeLocalCopyOfClientHandle();
+ ~AnonymousPipeServerStream();
+ public string GetClientHandleAsString();
+ }
+ public sealed class NamedPipeClientStream : PipeStream {
+ public NamedPipeClientStream(PipeDirection direction, bool isAsync, bool isConnected, SafePipeHandle safePipeHandle);
+ public NamedPipeClientStream(string pipeName);
+ public NamedPipeClientStream(string serverName, string pipeName);
+ public NamedPipeClientStream(string serverName, string pipeName, PipeDirection direction);
+ public NamedPipeClientStream(string serverName, string pipeName, PipeDirection direction, PipeOptions options);
+ public NamedPipeClientStream(string serverName, string pipeName, PipeDirection direction, PipeOptions options, TokenImpersonationLevel impersonationLevel);
+ public int NumberOfServerInstances { get; }
+ public void Connect();
+ public void Connect(int timeout);
+ public Task ConnectAsync();
+ public Task ConnectAsync(int timeout);
+ public Task ConnectAsync(int timeout, CancellationToken cancellationToken);
+ public Task ConnectAsync(CancellationToken cancellationToken);
+ ~NamedPipeClientStream();
+ }
+ public sealed class NamedPipeServerStream : PipeStream {
+ public NamedPipeServerStream(PipeDirection direction, bool isAsync, bool isConnected, SafePipeHandle safePipeHandle);
+ public NamedPipeServerStream(string pipeName);
+ public NamedPipeServerStream(string pipeName, PipeDirection direction);
+ public NamedPipeServerStream(string pipeName, PipeDirection direction, int maxNumberOfServerInstances);
+ public NamedPipeServerStream(string pipeName, PipeDirection direction, int maxNumberOfServerInstances, PipeTransmissionMode transmissionMode);
+ public NamedPipeServerStream(string pipeName, PipeDirection direction, int maxNumberOfServerInstances, PipeTransmissionMode transmissionMode, PipeOptions options);
+ public NamedPipeServerStream(string pipeName, PipeDirection direction, int maxNumberOfServerInstances, PipeTransmissionMode transmissionMode, PipeOptions options, int inBufferSize, int outBufferSize);
+ public void Disconnect();
+ ~NamedPipeServerStream();
+ public string GetImpersonationUserName();
+ public void WaitForConnection();
+ public Task WaitForConnectionAsync();
+ public Task WaitForConnectionAsync(CancellationToken cancellationToken);
+ }
+ public enum PipeDirection {
+ In = 1,
+ InOut = 3,
+ Out = 2,
+ }
+ public enum PipeOptions {
+ Asynchronous = 1073741824,
+ None = 0,
+ WriteThrough = -2147483648,
+ }
+ public abstract class PipeStream : Stream {
+ protected PipeStream(PipeDirection direction, int bufferSize);
+ protected PipeStream(PipeDirection direction, PipeTransmissionMode transmissionMode, int outBufferSize);
+ public override bool CanRead { get; }
+ public override bool CanSeek { get; }
+ public override bool CanWrite { get; }
+ public virtual int InBufferSize { get; }
+ public bool IsAsync { get; }
+ public bool IsConnected { get; protected set; }
+ public bool IsMessageComplete { get; }
+ public override long Length { get; }
+ public virtual int OutBufferSize { get; }
+ public override long Position { get; set; }
+ public virtual PipeTransmissionMode ReadMode { get; set; }
+ public SafePipeHandle SafePipeHandle { get; }
+ public virtual PipeTransmissionMode TransmissionMode { get; }
+ protected override void Dispose(bool disposing);
+ public override void Flush();
+ public override int Read(byte[] buffer, int offset, int count);
+ public override Task<int> ReadAsync(byte[] buffer, int offset, int count, CancellationToken cancellationToken);
+ public override int ReadByte();
+ public override long Seek(long offset, SeekOrigin origin);
+ public override void SetLength(long value);
+ public void WaitForPipeDrain();
+ public override void Write(byte[] buffer, int offset, int count);
+ public override Task WriteAsync(byte[] buffer, int offset, int count, CancellationToken cancellationToken);
+ public override void WriteByte(byte value);
+ }
+ public enum PipeTransmissionMode {
+ Byte = 0,
+ Message = 1,
+ }
+}
```