Cách dễ nhất để kiểm tra xem một ổ cắm đã được đóng ở phía xa của kết nối? socket::is_open()
trả về true ngay cả khi nó được đóng ở phía xa (tôi đang sử dụng boost::asio::ip::tcp::socket
).Làm cách nào để kiểm tra xem ổ cắm có được đóng trong Boost.Asio không?
Tôi có thể thử đọc từ luồng và xem liệu nó có thành công hay không, nhưng tôi phải thay đổi logic của chương trình để làm cho nó hoạt động theo cách này (tôi không muốn dữ liệu được trích xuất từ luồng điểm kiểm tra).
Tại sao bạn cần biết liệu kết nối từ xa đã đóng chưa? – outis
Ngoài ra, bạn có đang sử dụng giao thức ứng dụng của thiết kế của riêng bạn hoặc giao thức chuẩn không? – outis
Tôi đang viết một chương trình trò chuyện cơ bản và tôi cần thông báo cho người dùng rằng người kia đã đóng ứng dụng. Tôi có giao thức của riêng mình và tôi đã thêm thông báo "Thoát". Hạn chế duy nhất là nó không được gửi nếu ứng dụng bị giết/treo/etc. – Hali