PipeStream.BeginRead(Byte[], Int32, Int32, AsyncCallback, Object) Methode
Definition
Wichtig
Einige Informationen beziehen sich auf Vorabversionen, die vor dem Release ggf. grundlegend überarbeitet werden. Microsoft übernimmt hinsichtlich der hier bereitgestellten Informationen keine Gewährleistungen, seien sie ausdrücklich oder konkludent.
Startet einen asynchronen Lesevorgang.
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
Parameter
- buffer
- Byte[]
Der Puffer, in den Daten gelesen werden sollen.
- offset
- Int32
Der Byteoffset, in buffer dem mit dem Lesen begonnen werden soll.
- count
- Int32
Die maximale Anzahl der zu lesenden Bytes.
- callback
- AsyncCallback
Die Methode, die aufgerufen werden soll, wenn der asynchrone Lesevorgang abgeschlossen ist.
- state
- Object
Ein vom Benutzer bereitgestelltes Objekt, das diese spezielle asynchrone Leseanforderung von anderen Anforderungen unterscheidet.
Gibt zurück
Ein IAsyncResult Objekt, das auf den asynchronen Lesevorgang verweist.
- Attribute
Ausnahmen
buffer ist null.
count ist größer als die Anzahl der in buffer.
Das Rohr ist geschlossen.
Die Pipe unterstützt keine Lesevorgänge.
Die Leitung ist getrennt, wartet auf die Verbindung, oder der Ziehpunkt wurde nicht festgelegt.
Die Pfeife ist unterbrochen, oder ein anderer E/A-Fehler ist aufgetreten.
Hinweise
Übergeben Sie das zurückgegebene IAsyncResult Objekt an die EndRead Methode, um zu bestimmen, wie viele Bytes gelesen wurden, und um Betriebssystemressourcen freizugeben, die zum Lesen verwendet werden. EndReadmuss einmal für jeden Anruf aufgerufen werden.BeginRead Dies kann entweder im gleichen Code erfolgen, der aufgerufen BeginRead wird, oder in einem Rückruf, der BeginReadan die Übergeben wird.
Verwenden Sie die CanRead Eigenschaft, um zu bestimmen, ob das aktuelle PipeStream Objekt Lesevorgänge unterstützt.
Wenn die Pipe geschlossen oder ein ungültiges Argument übergeben BeginReadwird, werden die entsprechenden Ausnahmen sofort ausgelöst. Fehler, die während einer asynchronen Leseanforderung auftreten, treten im Threadpoolthread auf, der die Anforderung ausführt. Die Ausnahmen werden ausgelöst, wenn der Code die EndRead Methode aufruft.