Tôi có một máy chủ nhận yêu cầu kết nối từ khách hàng. Máy chủ này sử dụng phương thức Socket.BeginReceive
và Socket.EndReceive
không đồng bộ. Mã này khá giống với mã được tìm thấy here.C#: Làm thế nào để chấm dứt một socket trước Socket.BeginReceive gọi lại?
Trong trường hợp của tôi, sau khi gọi Socket.BeginReceive
Tôi cần một thời gian chờ sao cho nếu khách hàng treo vào kết nối nhưng không truyền tải dữ liệu nào trong một khoảng thời gian nhất định, tôi cần phải chấm dứt kết nối.
- Tôi làm cách nào để chấm dứt kết nối trong trường hợp này?
- Cách tốt nhất để mã hóa bộ hẹn giờ là gì?
Bạn có nghĩa là phương thức gọi lại sẽ vẫn chạy sau khi phương thức đóng của socket được gọi? – Lopper
Nếu một BeginReceive() đang chờ xử lý: có. Nó * luôn * phải được ghép nối với một cuộc gọi EndReceive(). –
Cảm ơn nobugz! :) – Lopper