BufferedStream.BeginRead(Byte[], Int32, Int32, AsyncCallback, Object) Yöntem
Tanım
Önemli
Bazı bilgiler ürünün ön sürümüyle ilgilidir ve sürüm öncesinde önemli değişiklikler yapılmış olabilir. Burada verilen bilgilerle ilgili olarak Microsoft açık veya zımni hiçbir garanti vermez.
Zaman uyumsuz bir okuma işlemi başlatır. (Bunun yerine kullanmayı ReadAsync(Byte[], Int32, Int32, CancellationToken) düşünün.)
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);
public override IAsyncResult BeginRead(byte[] buffer, int offset, int count, AsyncCallback callback, object? state);
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
Parametreler
- buffer
- Byte[]
Verilerin okunması için arabellek.
- offset
- Int32
Akıştan okunan verileri yazmaya başlamak için bayt uzaklığı buffer .
- count
- Int32
Okunacak bayt sayısı üst sınırı.
- callback
- AsyncCallback
Okuma tamamlandığında çağrılmak üzere isteğe bağlı bir zaman uyumsuz geri çağırma.
- state
- Object
Bu belirli zaman uyumsuz okuma isteğini diğer isteklerden ayıran kullanıcı tarafından sağlanan nesne.
Döndürülenler
Zaman uyumsuz okumayı temsil eden ve hala beklemede olabilecek bir nesne.
Özel durumlar
buffer, null'e eşittir.
offset veya count negatiftir.
Akışın sonundan sonra zaman uyumsuz bir okuma denendi.
Arabellek uzunluğu eksi offset değeri değerinden countküçüktür.
Geçerli akış okuma işlemini desteklemiyor.
Açıklamalar
.NET Framework 4 ve önceki sürümlerinde, zaman uyumsuz dosya işlemleri uygulamak için ve EndRead gibi BeginRead yöntemleri kullanmanız gerekir. Bu yöntemler eski kodu desteklemek için .NET Framework 4.5'te hala kullanılabilir; ancak , ve FlushAsyncgibi ReadAsyncWriteAsyncyeni zaman uyumsuz yöntemler, zaman uyumsuz dosya işlemlerini daha kolay uygulamanıza yardımcı olur.
EndWrite her çağrısı BeginReadiçin tam olarak bir kez çağrılmalıdır. Başka bir okuma işlemine başlamadan önce bir okuma işleminin sonlandırılamaması kilitlenme gibi istenmeyen davranışlara neden olabilir.
Uyarı
CanRead Geçerli örneğin okumayı destekleyip desteklemediğini belirlemek için özelliğini kullanın.
EndRead okunan bayt sayısını bulmak için bununla IAsyncResult birlikte çağrılmalıdır.