PipeStream.BeginRead(Byte[], Int32, Int32, AsyncCallback, Object) Metoda

Definice

Zahájí asynchronní operaci čtení.

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[]

Vyrovnávací paměť pro čtení dat.

offset
Int32

Posun bajtů, při buffer kterém se má začít číst.

count
Int32

Maximální počet bajtů ke čtení.

callback
AsyncCallback

Metoda volání při dokončení asynchronní operace čtení.

state
Object

Uživatelem zadaný objekt, který odlišuje tento konkrétní asynchronní požadavek na čtení od ostatních požadavků.

Návraty

Objekt IAsyncResult , který odkazuje na asynchronní čtení.

Atributy

Výjimky

buffer je null.

offset je menší než 0.

-nebo-

count je menší než 0.

count je větší než počet bajtů dostupných v buffernástroji .

Potrubí je zavřené.

Kanál nepodporuje operace čtení.

Kanál je odpojený, čeká na připojení nebo nebyl nastaven popisovač.

Kanál je přerušený nebo došlo k jiné vstupně-výstupní chybě.

Poznámky

Předejte vrácený IAsyncResult objekt metodě EndRead , abyste zjistili, kolik bajtů bylo přečteno, a uvolnit prostředky operačního systému používané ke čtení. EndReadmusí být volána jednou pro každé volání .BeginRead To lze provést buď ve stejném kódu, který volal BeginRead , nebo ve zpětném volání, které je předáno do BeginRead.

CanRead Pomocí vlastnosti určete, zda aktuální PipeStream objekt podporuje operace čtení.

Pokud je kanál uzavřen nebo je předán neplatný argument do BeginRead, příslušné výjimky jsou vyvolány okamžitě. K chybám, ke kterým dochází během asynchronního požadavku na čtení, dochází ve vlákně fondu vláken, které provádí požadavek. Výjimky jsou vyvolány, když kód volá metodu EndRead .

Platí pro