PipeStream.BeginRead(Byte[], Int32, Int32, AsyncCallback, Object) Metoda
Definicja
Ważne
Niektóre informacje odnoszą się do produktu w wersji wstępnej, który może zostać znacząco zmodyfikowany przed wydaniem. Firma Microsoft nie udziela żadnych gwarancji, jawnych lub domniemanych, w odniesieniu do informacji podanych w tym miejscu.
Rozpoczyna asynchroniczną operację odczytu.
public:
override IAsyncResult ^ BeginRead(cli::array <System::Byte> ^ buffer, int offset, int count, AsyncCallback ^ callback, System::Object ^ state);
public override IAsyncResult BeginRead (byte[] buffer, int offset, int count, AsyncCallback? callback, object? state);
public override IAsyncResult BeginRead (byte[] buffer, int offset, int count, AsyncCallback callback, object state);
[System.Security.SecurityCritical]
public override IAsyncResult BeginRead (byte[] buffer, int offset, int count, AsyncCallback callback, object state);
override this.BeginRead : byte[] * int * int * AsyncCallback * obj -> IAsyncResult
[<System.Security.SecurityCritical>]
override this.BeginRead : byte[] * int * int * AsyncCallback * obj -> IAsyncResult
Public Overrides Function BeginRead (buffer As Byte(), offset As Integer, count As Integer, callback As AsyncCallback, state As Object) As IAsyncResult
Parametry
- buffer
- Byte[]
Bufor do odczytu danych.
- offset
- Int32
Przesunięcie bajtu, w buffer
którym należy rozpocząć czytanie.
- count
- Int32
Maksymalna liczba bajtów do odczytania.
- callback
- AsyncCallback
Metoda wywoływana po zakończeniu asynchronicznej operacji odczytu.
- state
- Object
Obiekt dostarczony przez użytkownika, który rozróżnia to konkretne asynchroniczne żądanie odczytu z innych żądań.
Zwraca
IAsyncResult Obiekt, który odwołuje się do odczytu asynchronicznego.
- Atrybuty
Wyjątki
buffer
to null
.
offset
wartość jest mniejsza niż 0.
-lub-
count
wartość jest mniejsza niż 0.
count
jest większa niż liczba bajtów dostępnych w pliku buffer
.
Rura jest zamknięta.
Potok nie obsługuje operacji odczytu.
Potok jest odłączony, czeka na połączenie lub nie ustawiono uchwytu.
Potok jest uszkodzony lub wystąpił inny błąd we/wy.
Uwagi
Przekaż zwrócony IAsyncResult obiekt do EndRead metody, aby określić liczbę odczytanych bajtów i zwolnić zasoby systemu operacyjnego używane do odczytu. EndRead musi być wywoływany raz dla każdego wywołania metody BeginRead. Można to zrobić w tym samym kodzie, który wywołuje BeginRead metodę lub w wywołaniu zwrotnym przekazywanym do metody BeginRead.
Użyj właściwości , CanRead aby określić, czy bieżący PipeStream obiekt obsługuje operacje odczytu.
Jeśli potok jest zamknięty lub do metody zostanie przekazany BeginReadnieprawidłowy argument , zostaną natychmiast zgłoszone odpowiednie wyjątki. Błędy występujące podczas asynchronicznego żądania odczytu występują w wątku puli wątków, który wykonuje żądanie. Wyjątki są zgłaszane, gdy kod wywołuje metodę EndRead .