StreamExtensionsReadAsync Method (Stream, Byte, Int32, Int32, CancellationToken) |
Asynchronously reads a sequence of bytes from a stream, advances the position within the stream by the number of bytes read,
and monitors cancellation requests.
Namespace: Rackspace.ThreadingAssembly: Rackspace.Threading (in Rackspace.Threading.dll) Version: 1.1.0.0
Syntax
public static Task<int> ReadAsync(
this Stream stream,
byte[] buffer,
int offset,
int count,
CancellationToken cancellationToken
)
<ExtensionAttribute>
Public Shared Function ReadAsync (
stream As Stream,
buffer As Byte(),
offset As Integer,
count As Integer,
cancellationToken As CancellationToken
) As Task(Of Integer)
public:
[ExtensionAttribute]
static Task<int>^ ReadAsync(
Stream^ stream,
array<unsigned char>^ buffer,
int offset,
int count,
CancellationToken cancellationToken
)
[<ExtensionAttribute>]
static member ReadAsync :
stream : Stream *
buffer : byte[] *
offset : int *
count : int *
cancellationToken : CancellationToken -> Task<int>
Parameters
- stream
- Type: System.IOStream
The stream to read data from. - buffer
- Type: SystemByte
The buffer to write the data into. - offset
- Type: SystemInt32
The byte offset in buffer at which to begin writing data from the stream. - count
- Type: SystemInt32
The maximum number of bytes to read. - cancellationToken
- Type: System.ThreadingCancellationToken
The token to monitor for cancellation requests. The default value is None.
Return Value
Type:
TaskInt32
A task that represents the asynchronous read operation. When the task completes successfully, the
Result
property contains the total number of bytes read into the buffer. The result value can be less than the number of bytes requested if
the number of bytes currently available is less than the requested number, or it can be 0 (zero) if the end of the stream has been reached.
Usage Note
In Visual Basic and C#, you can call this method as an instance method on any object of type
Stream. When you use instance method syntax to call this method, omit the first parameter. For more information, see
Extension Methods (Visual Basic) or
Extension Methods (C# Programming Guide).
Exceptions
Remarks
Use the
CanRead property to determine whether the stream instance supports reading.
If the operation is canceled before it completes, the returned task contains the Canceled
value for the Status property.
Version Information
.NET Framework
Supported in: 4.0, 3.5
Portable Class Library
Supported in: Portable Class Library (Legacy)
Rackspace Threading Library
Supported in: 1.1, 1.0
See Also