Aracılığıyla paylaş


Socket.EndSend Yöntem

Tanım

Bekleyen zaman uyumsuz göndermeyi sonlandırır.

Aşırı Yüklemeler

Name Description
EndSend(IAsyncResult)

Bekleyen zaman uyumsuz göndermeyi sonlandırır.

EndSend(IAsyncResult, SocketError)

Bekleyen zaman uyumsuz göndermeyi sonlandırır.

EndSend(IAsyncResult)

Kaynak:
Socket.cs
Kaynak:
Socket.cs
Kaynak:
Socket.cs
Kaynak:
Socket.cs
Kaynak:
Socket.cs

Bekleyen zaman uyumsuz göndermeyi sonlandırır.

public:
 int EndSend(IAsyncResult ^ asyncResult);
public int EndSend(IAsyncResult asyncResult);
member this.EndSend : IAsyncResult -> int
Public Function EndSend (asyncResult As IAsyncResult) As Integer

Parametreler

asyncResult
IAsyncResult

IAsyncResult Bu zaman uyumsuz işlem için durum bilgilerini depolayan bir.

Döndürülenler

Başarılı olursa, öğesine Socketgönderilen bayt sayısı ; aksi takdirde geçersiz Socket bir hatadır.

Özel durumlar

asyncResult, null'e eşittir.

asyncResult yöntemine BeginSend(Byte[], Int32, Int32, SocketFlags, AsyncCallback, Object) yapılan bir çağrı tarafından döndürülmedi.

EndSend(IAsyncResult) daha önce zaman uyumsuz gönderme için çağrıldı.

Yuvaya erişmeye çalışılırken bir hata oluştu.

-veya-

Yalnızca .NET 7+ : Socket kapatıldı.

Yalnızca .NET Framework, .NET Core ve .NET 5-6: Socket kapatıldı.

Açıklamalar

Önemli

Bu bir uyumluluk API'sidir. Yeni geliştirme için APM (Begin* ve End*) yöntemlerinin kullanılmasını önermiyoruz. Bunun yerine, tabanlı eşdeğerleri kullanın Task.

EndSend tarafından BeginSendbaşlatılan işlemi tamamlar. Eşleşen BeginSend çağrı tarafından oluşturulan geçirmeniz IAsyncResult gerekir.

Bağlantısız bir protokol kullanıyorsanız, EndSend veri birimi gönderilene kadar engeller. Bağlantı odaklı bir protokol kullanıyorsanız, EndSend arabelleğin bir bölümü gönderilene kadar engeller. 'den EndSend dönüş değeri arabelleğin tamamen gönderilmediğini gösteriyorsa, gönderilmemiş verileri tutmak için arabelleği değiştirerek yöntemini yeniden çağırın BeginSend .

Gönderdiğiniz verilerin ağda hemen görüneceğinin garantisi yoktur. Ağ verimliliğini artırmak için, temel alınan sistem önemli miktarda giden veri toplanana kadar iletimi geciktirebilir. Yöntemin BeginSend başarıyla tamamlanması, temel alınan sistemin bir ağ gönderme işlemi için verilerinizi arabelleğe almak için yeterli alanı olduğu anlamına gelir.

Uyarı

bir SocketExceptionalırsanız, özelliğini kullanarak SocketException.ErrorCode belirli bir hata kodunu alın.

Uyarı

Belirli bir iş parçacığı tarafından başlatılan tüm G/Ç, iş parçacığı çıktığında iptal edilir. İş parçacığı işlem tamamlanmadan önce çıkarsa bekleyen bir zaman uyumsuz işlem başarısız olabilir.

Uyarı

Gönderme işleminin başarıyla tamamlanması, verilerin başarıyla teslim edildiği anlamına gelmez. Aktarım sisteminde iletilecek verileri tutmak için kullanılabilir arabellek alanı yoksa, yuva engelleyici olmayan moda yerleştirilmediği sürece gönderme engellenir.

Uyarı

Bu üye, uygulamanızda ağ izlemeyi etkinleştirdiğinizde izleme bilgilerini döndürür. Daha fazla bilgi için bkz. .NET Framework'te Ağ İzleme.

Ayrıca bkz.

Şunlara uygulanır

EndSend(IAsyncResult, SocketError)

Kaynak:
Socket.cs
Kaynak:
Socket.cs
Kaynak:
Socket.cs
Kaynak:
Socket.cs
Kaynak:
Socket.cs

Bekleyen zaman uyumsuz göndermeyi sonlandırır.

public:
 int EndSend(IAsyncResult ^ asyncResult, [Runtime::InteropServices::Out] System::Net::Sockets::SocketError % errorCode);
public int EndSend(IAsyncResult asyncResult, out System.Net.Sockets.SocketError errorCode);
member this.EndSend : IAsyncResult * SocketError -> int
Public Function EndSend (asyncResult As IAsyncResult, ByRef errorCode As SocketError) As Integer

Parametreler

asyncResult
IAsyncResult

IAsyncResult Bu zaman uyumsuz işlem için durum bilgilerini depolayan bir.

errorCode
SocketError

SocketError Yuva hatasını depolayan bir nesne.

Döndürülenler

Başarılı olursa, öğesine Socketgönderilen bayt sayısı ; aksi takdirde geçersiz Socket bir hatadır.

Özel durumlar

asyncResult, null'e eşittir.

asyncResult yöntemine BeginSend(Byte[], Int32, Int32, SocketFlags, AsyncCallback, Object) yapılan bir çağrı tarafından döndürülmedi.

EndSend(IAsyncResult) daha önce zaman uyumsuz gönderme için çağrıldı.

Yuvaya erişmeye çalışılırken bir hata oluştu.

-veya-

Yalnızca .NET 7+ : Socket kapatıldı.

Yalnızca .NET Framework, .NET Core ve .NET 5-6: Socket kapatıldı.

Açıklamalar

Önemli

Bu bir uyumluluk API'sidir. Yeni geliştirme için APM (Begin* ve End*) yöntemlerinin kullanılmasını önermiyoruz. Bunun yerine, tabanlı eşdeğerleri kullanın Task.

EndSend tarafından BeginSendbaşlatılan işlemi tamamlar. Eşleşen BeginSend çağrı tarafından oluşturulan geçirmeniz IAsyncResult gerekir.

Bağlantısız bir protokol kullanıyorsanız, EndSend veri birimi gönderilene kadar engeller. Bağlantı odaklı bir protokol kullanıyorsanız, EndSend arabelleğin bir bölümü gönderilene kadar engeller. 'den EndSend dönüş değeri arabelleğin tamamen gönderilmediğini gösteriyorsa, gönderilmemiş verileri tutmak için arabelleği değiştirerek yöntemini yeniden çağırın BeginSend .

Gönderdiğiniz verilerin ağda hemen görüneceğinin garantisi yoktur. Ağ verimliliğini artırmak için, temel alınan sistem önemli miktarda giden veri toplanana kadar iletimi geciktirebilir. Yöntemin BeginSend başarıyla tamamlanması, temel alınan sistemin bir ağ gönderme işlemi için verilerinizi arabelleğe almak için yeterli alanı olduğu anlamına gelir.

Uyarı

bir SocketExceptionalırsanız, özelliğini kullanarak SocketException.ErrorCode belirli bir hata kodunu alın.

Uyarı

Belirli bir iş parçacığı tarafından başlatılan tüm G/Ç, iş parçacığı çıktığında iptal edilir. İş parçacığı işlem tamamlanmadan önce çıkarsa bekleyen bir zaman uyumsuz işlem başarısız olabilir.

Uyarı

Gönderme işleminin başarıyla tamamlanması, verilerin başarıyla teslim edildiği anlamına gelmez. Aktarım sisteminde iletilecek verileri tutmak için kullanılabilir arabellek alanı yoksa, yuva engelleyici olmayan moda yerleştirilmediği sürece gönderme engellenir.

Uyarı

Bu üye, uygulamanızda ağ izlemeyi etkinleştirdiğinizde izleme bilgilerini döndürür. Daha fazla bilgi için bkz. .NET Framework'te Ağ İzleme.

Ayrıca bkz.

Şunlara uygulanır