PipeStream.BeginWrite(Byte[], Int32, Int32, AsyncCallback, Object) Method
Definition
Important
Some information relates to prerelease product that may be substantially modified before it’s released. Microsoft makes no warranties, express or implied, with respect to the information provided here.
Begins an asynchronous write operation.
public:
override IAsyncResult ^ BeginWrite(cli::array <System::Byte> ^ buffer, int offset, int count, AsyncCallback ^ callback, System::Object ^ state);
public override IAsyncResult BeginWrite (byte[] buffer, int offset, int count, AsyncCallback? callback, object? state);
public override IAsyncResult BeginWrite (byte[] buffer, int offset, int count, AsyncCallback callback, object state);
[System.Security.SecurityCritical]
public override IAsyncResult BeginWrite (byte[] buffer, int offset, int count, AsyncCallback callback, object state);
override this.BeginWrite : byte[] * int * int * AsyncCallback * obj -> IAsyncResult
[<System.Security.SecurityCritical>]
override this.BeginWrite : byte[] * int * int * AsyncCallback * obj -> IAsyncResult
Public Overrides Function BeginWrite (buffer As Byte(), offset As Integer, count As Integer, callback As AsyncCallback, state As Object) As IAsyncResult
Parameters
- buffer
- Byte[]
The buffer that contains the data to write to the current stream.
- offset
- Int32
The zero-based byte offset in buffer
at which to begin copying bytes to the current stream.
- count
- Int32
The maximum number of bytes to write.
- callback
- AsyncCallback
The method to call when the asynchronous write operation is completed.
- state
- Object
A user-provided object that distinguishes this particular asynchronous write request from other requests.
Returns
An IAsyncResult object that references the asynchronous write operation.
- Attributes
Exceptions
buffer
is null
.
count
is greater than the number of bytes available in buffer
.
The pipe is closed.
The pipe does not support write operations.
The pipe is disconnected, waiting to connect, or the handle has not been set.
The pipe is broken or another I/O error occurred.
Remarks
EndWrite must be called once for every call to BeginWrite. This can be done either in the same code that called BeginWrite or in a callback that is passed to BeginWrite.
Use the CanWrite property to determine whether the current PipeStream object supports write operations.
If the pipe is closed or an invalid argument is passed to BeginWrite, the appropriate exceptions are raised immediately. Errors that occur during an asynchronous write request occur on the thread pool thread that is performing the request. The exceptions are raised when the code calls the EndWrite method.