Sdílet prostřednictvím


BufferedStream.BeginWrite(Byte[], Int32, Int32, AsyncCallback, Object) Metoda

Definice

Spustí asynchronní operaci zápisu. (Zvažte místo toho použití WriteAsync(Byte[], Int32, Int32, CancellationToken) .)

public:
 override IAsyncResult ^ BeginWrite(cli::array <System::Byte> ^ buffer, int offset, int count, AsyncCallback ^ callback, System::Object ^ state);
public override IAsyncResult BeginWrite (byte[] buffer, int offset, int count, AsyncCallback? callback, object? state);
public override IAsyncResult BeginWrite (byte[] buffer, int offset, int count, AsyncCallback callback, object state);
public override IAsyncResult BeginWrite (byte[] buffer, int offset, int count, AsyncCallback callback, object? state);
override this.BeginWrite : byte[] * int * int * AsyncCallback * obj -> IAsyncResult
Public Overrides Function BeginWrite (buffer As Byte(), offset As Integer, count As Integer, callback As AsyncCallback, state As Object) As IAsyncResult

Parametry

buffer
Byte[]

Vyrovnávací paměť obsahující data pro zápis do aktuálního datového proudu.

offset
Int32

Posun bajtů založený na nule, při buffer kterém se mají začít kopírovat bajty do aktuálního datového proudu.

count
Int32

Maximální počet bajtů k zápisu.

callback
AsyncCallback

Metoda, která se má volat při dokončení asynchronní operace zápisu.

state
Object

Objekt zadaný uživatelem, který odlišuje tento konkrétní asynchronní požadavek na zápis od jiných požadavků.

Návraty

Objekt, který odkazuje na asynchronní zápis, který může být stále čeká na vyřízení.

Výjimky

buffer délka minus offset je menší než count.

buffer je null.

offset nebo count je negativní.

Datový proud nepodporuje psaní.

Poznámky

V rozhraní .NET Framework 4 a starších verzích musíte použít metody, jako BeginWrite jsou a EndWrite k implementaci asynchronních operací se soubory. Tyto metody jsou stále k dispozici v rozhraní .NET Framework 4.5 pro podporu staršího kódu; Nové asynchronní metody, jako ReadAsyncjsou , WriteAsynca FlushAsync, však pomáhají snadněji implementovat asynchronní operace se soubory.

EndWrite musí být volána přesně jednou při každém IAsyncResult z BeginWrite. EndWrite bude blokovat, dokud se nedokončí vstupně-výstupní operace.

Platí pro