تكبليستينر:كيف يمكنني اكتشاف قطع اتصال العميل؟
-
05-07-2019 - |
سؤال
كيف يمكنني اكتشاف متى ينقطع اتصال العميل بـ TcpListener؟
يتم التعامل مع كل عميل من عملائي في موضوع منفصل.
المحلول
ينظر الى NetworkStream.قراءة, ، أو اعتمادًا على ما تستخدمه في التعليمات البرمجية الخاصة بك ربما TCClient.GetStream هو أكثر ملاءمة، ولكن في الأساس نفس الإجابة.
من المستندات:
تقرأ هذه الطريقة البيانات في المعلمة المخزن المؤقت وإرجاع عدد البايتات التي تم قراءةها بنجاح.إذا لم تكن هناك بيانات متاحة للقراءة ، فإن طريقة القراءة تُرجع 0.تقرأ عملية القراءة أكبر قدر من البيانات المتاحة ، حتى عدد البايتات المحددة بواسطة معلمة الحجم. إذا قام المضيف البعيد بإيقاف الاتصال ، وتم استلام جميع البيانات المتاحة ، فإن طريقة القراءة تكمل على الفور وإرجاع بايت الصفر.
لا تنتمي إلى StackOverflow