Stream.EndRead(IAsyncResult) Yöntem

Tanım

Bekleyen zaman uyumsuz okumanın tamamlanmasını bekler. (Bunun yerine kullanmayı ReadAsync(Byte[], Int32, Int32) düşünün.)

public:
 virtual int EndRead(IAsyncResult ^ asyncResult);
public virtual int EndRead(IAsyncResult asyncResult);
abstract member EndRead : IAsyncResult -> int
override this.EndRead : IAsyncResult -> int
Public Overridable Function EndRead (asyncResult As IAsyncResult) As Integer

Parametreler

asyncResult
IAsyncResult

Tamamlanabilmek için bekleyen zaman uyumsuz istek başvurusu.

Döndürülenler

Sıfır (0) ile istenen bayt sayısı arasında akıştan okunan bayt sayısı. ReadAsync yalnızca sıfır bayt istendiyse veya akışın sonunda olduğundan daha fazla bayt yoksa sıfır (0) döndürür; aksi takdirde, en az bir bayt kullanılabilir olana kadar okuma işlemleri tamamlanmaz. Sıfır bayt istenirse, okuma işlemleri hemen tamamlanabilir veya en az bir bayt kullanılabilir olana kadar (ancak herhangi bir veri kullanılmadan) tamamlanmayabilir.

Özel durumlar

asyncResult, null'e eşittir.

Bekleyen okuma işleminin tanıtıcısı kullanılamaz.

-veya-

Bekleyen işlem okumayı desteklemiyor.

asyncResult geçerli akış üzerindeki bir BeginRead(Byte[], Int32, Int32, AsyncCallback, Object) yöntemden kaynaklanmadı.

Akış kapatıldı veya bir iç hata oluştu.

Açıklamalar

.NET Framework 4 ve önceki sürümlerinde, zaman uyumsuz G/Ç işlemleri uygulamak için ve BeginRead gibi EndRead yöntemleri kullanmanız gerekir. Bu yöntemler eski kodu desteklemek için .NET Framework 4.5'te hala kullanılabilir; ancak , , ReadAsyncve WriteAsyncgibi CopyToAsyncFlushAsyncyeni zaman uyumsuz yöntemler zaman uyumsuz G/Ç işlemlerini daha kolay uygulamanıza yardımcı olur.

Akıştan kaç bayt okundu olduğunu belirlemek için çağrısı EndRead .

EndRead' den BeginReadher IAsyncResult seferinde bir kez çağrılabilir.

Bu yöntem G/Ç işlemi tamamlanana kadar engeller.

Şunlara uygulanır

Ayrıca bkz.