IsolatedStorageFileStream.ReadAsync Metoda
Definice
Důležité
Některé informace platí pro předběžně vydaný produkt, který se může zásadně změnit, než ho výrobce nebo autor vydá. Microsoft neposkytuje žádné záruky, výslovné ani předpokládané, týkající se zde uváděných informací.
Přetížení
ReadAsync(Byte[], Int32, Int32, CancellationToken) |
Asynchronně kopíruje bajty z aktuálního objektu ve IsolatedStorageFileStream vyrovnávací paměti do pole bajtů. |
ReadAsync(Memory<Byte>, CancellationToken) |
Asynchronně kopíruje bajty z aktuálního objektu ve IsolatedStorageFileStream vyrovnávací paměti do rozsahu bajtové paměti. |
ReadAsync(Byte[], Int32, Int32, CancellationToken)
Asynchronně kopíruje bajty z aktuálního objektu ve IsolatedStorageFileStream vyrovnávací paměti do pole bajtů.
public:
override System::Threading::Tasks::Task<int> ^ ReadAsync(cli::array <System::Byte> ^ buffer, int offset, int count, System::Threading::CancellationToken cancellationToken);
public override System.Threading.Tasks.Task<int> ReadAsync (byte[] buffer, int offset, int count, System.Threading.CancellationToken cancellationToken);
override this.ReadAsync : byte[] * int * int * System.Threading.CancellationToken -> System.Threading.Tasks.Task<int>
Public Overrides Function ReadAsync (buffer As Byte(), offset As Integer, count As Integer, cancellationToken As CancellationToken) As Task(Of Integer)
Parametry
- buffer
- Byte[]
Vyrovnávací paměť pro zápis dat.
- offset
- Int32
Posun ve vyrovnávací paměti, ve kterém se má začít psát.
- count
- Int32
Maximální počet bajtů ke čtení.
- cancellationToken
- CancellationToken
Token, který se má monitorovat pro žádosti o zrušení. Výchozí hodnota je None.
Návraty
Úloha, která představuje asynchronní operaci čtení. Zabalí celkový počet přečtených bajtů do objektu buffer
. To může být menší než požadovaný počet bajtů, pokud tento počet bajtů není aktuálně k dispozici, nebo nula, pokud je dosaženo konce datového proudu.
Výjimky
Token zrušení byl zrušen. Tato výjimka se uloží do vrácené úlohy.
Poznámky
Parametr buffer
může být instancí Buffer třídy nebo polem jednoho z následujících typů: Byte, SByte, , Char, Int16, Int32, , Int64, UInt16, , SingleUInt32UInt64nebo .Double
Pokud je operace čtení úspěšná, aktuální pozice datového proudu se posoudí o počet přečtených bajtů. Pokud dojde k výjimce, aktuální pozice datového proudu se nezmění.
Metoda ReadAsync zachází s buffer
parametrem jako s blokem bajtů bez ohledu na jeho skutečný typ. Podobně offset
jsou parametry a count
vždy zadané v bajtech. Pro buffer
parametry jiné než pole bajtů to znamená, že index prvku nebo počet prvků musí být vynásoben velikostí prvku v bajtech, aby se vytvořila správná hodnota pro offset
nebo count
.
Metoda ReadAsync vrátí nulu pouze v případě, že je dosaženo konce datového proudu. Ve všech ostatních případech ReadAsync vždy před vrácením přečte z datového proudu alespoň jeden bajt. Pokud nejsou k dispozici žádná data z objektu IsolatedStorageFileStream při volání ReadAsyncmetody , bude metoda blokována, dokud nebude vrácen alespoň jeden bajt dat.
Tato metoda ukládá do úlohy, která vrací všechny výjimky nepouužování, které může vyvolat synchronní protějšek metody. Pokud je do vrácené úlohy uložena výjimka, bude tato výjimka vyvolána, když je úloha očekávána. Výjimky použití, jako ArgumentExceptionje , se stále vyvolává synchronně. Informace o uložených výjimkách najdete v tématu Výjimky vyvolané nástrojem Read(Byte[], Int32, Int32).
Platí pro
ReadAsync(Memory<Byte>, CancellationToken)
Asynchronně kopíruje bajty z aktuálního objektu ve IsolatedStorageFileStream vyrovnávací paměti do rozsahu bajtové paměti.
public override System.Threading.Tasks.ValueTask<int> ReadAsync (Memory<byte> buffer, System.Threading.CancellationToken cancellationToken = default);
override this.ReadAsync : Memory<byte> * System.Threading.CancellationToken -> System.Threading.Tasks.ValueTask<int>
Public Overrides Function ReadAsync (buffer As Memory(Of Byte), Optional cancellationToken As CancellationToken = Nothing) As ValueTask(Of Integer)
Parametry
- cancellationToken
- CancellationToken
Token, který se má monitorovat pro žádosti o zrušení. Výchozí hodnota je None.
Návraty
Úloha, která představuje asynchronní operaci čtení. Zabalí celkový počet přečtených bajtů do objektu buffer
. To může být menší než požadovaný počet bajtů, pokud tento počet bajtů není aktuálně k dispozici, nebo nula, pokud je dosaženo konce datového proudu.
Výjimky
Token zrušení byl zrušen. Tato výjimka se uloží do vrácené úlohy.