DeflateStream.BeginRead(Byte[], Int32, Int32, AsyncCallback, Object) Methode
Definitie
Belangrijk
Bepaalde informatie heeft betrekking op een voorlopige productversie die aanzienlijk kan worden gewijzigd voordat deze wordt uitgebracht. Microsoft biedt geen enkele expliciete of impliciete garanties met betrekking tot de informatie die hier wordt verstrekt.
Begint een asynchrone leesbewerking. (Overweeg in plaats daarvan de ReadAsync(Byte[], Int32, Int32) methode te gebruiken.)
public:
override IAsyncResult ^ BeginRead(cli::array <System::Byte> ^ array, int offset, int count, AsyncCallback ^ asyncCallback, System::Object ^ asyncState);
public:
override IAsyncResult ^ BeginRead(cli::array <System::Byte> ^ buffer, int offset, int count, AsyncCallback ^ asyncCallback, System::Object ^ asyncState);
public override IAsyncResult BeginRead(byte[] array, int offset, int count, AsyncCallback asyncCallback, object asyncState);
public override IAsyncResult BeginRead(byte[] buffer, int offset, int count, AsyncCallback asyncCallback, object asyncState);
override this.BeginRead : byte[] * int * int * AsyncCallback * obj -> IAsyncResult
override this.BeginRead : byte[] * int * int * AsyncCallback * obj -> IAsyncResult
Public Overrides Function BeginRead (array As Byte(), offset As Integer, count As Integer, asyncCallback As AsyncCallback, asyncState As Object) As IAsyncResult
Public Overrides Function BeginRead (buffer As Byte(), offset As Integer, count As Integer, asyncCallback As AsyncCallback, asyncState As Object) As IAsyncResult
Parameters
- bufferarray
- Byte[]
De bytematrix waar de gegevens in moeten worden gelezen.
- offset
- Int32
De byte-offset waarop gegevens uit de stream moeten worden gelezen.
- count
- Int32
Het maximum aantal bytes dat moet worden gelezen.
- asyncCallback
- AsyncCallback
Een optionele asynchrone callback die moet worden aangeroepen wanneer de leesbewerking is voltooid.
- asyncState
- Object
Een door de gebruiker verstrekt object dat deze specifieke asynchrone leesaanvraag onderscheidt van andere aanvragen.
Retouren
Een object dat de asynchrone leesbewerking vertegenwoordigt, die nog in behandeling kan zijn.
Uitzonderingen
De methode heeft geprobeerd asynchroon achter het einde van de stream te lezen of er is een schijffout opgetreden.
Een of meer argumenten zijn ongeldig.
Methoden werden aangeroepen nadat de stream is gesloten.
De huidige DeflateStream implementatie biedt geen ondersteuning voor de leesbewerking.
Deze aanroep kan niet worden voltooid.
Opmerkingen
Important
Vanaf .NET 6 kan deze methode mogelijk niet zoveel bytes lezen als is aangevraagd. Zie Gedeeltelijke en nul-byte-leesbewerkingen in DeflateStream, GZipStream en CryptoStream voor meer informatie.
Vanaf .NET Framework 4.5 kunt u asynchrone leesbewerkingen uitvoeren met behulp van de methode ReadAsync. De BeginRead methode is nog steeds beschikbaar in de huidige versies ter ondersteuning van verouderde code. U kunt echter eenvoudiger asynchrone I/O-bewerkingen implementeren met behulp van de nieuwe asynchrone methoden. Zie Asynchrone bestands-I/O voor meer informatie.
Geef de IAsyncResult retourwaarde door aan de EndRead methode van de stream om te bepalen hoeveel bytes er zijn gelezen en om besturingssysteembronnen vrij te geven die worden gebruikt voor lezen. U kunt dit doen met behulp van dezelfde code die wordt aangeroepen BeginRead of in een callback die is doorgegeven aan BeginRead.
De huidige positie in de stream wordt bijgewerkt wanneer de asynchrone lees- of schrijfbewerking wordt uitgegeven, niet wanneer de I/O-bewerking is voltooid.
Meerdere gelijktijdige asynchrone aanvragen zorgen ervoor dat de voltooiingsvolgorde van de aanvraag onzeker is.
Gebruik de CanRead eigenschap om te bepalen of het huidige DeflateStream object het lezen ondersteunt.
Als een stream is gesloten of u een ongeldig argument doorgeeft, worden er direct uitzonderingen gegenereerd.BeginRead Fouten die optreden tijdens een asynchrone leesaanvraag, zoals een schijffout tijdens de I/O-aanvraag, treden op in de thread van de thread van de thread van de threadgroep en genereren uitzonderingen bij het aanroepen EndRead.