Khi async_read_some() trả về ngoại lệ của EOF, điều đó có nghĩa là máy chủ ngừng gửi dữ liệu hoặc có nghĩa là kết nối bị đóng. Tôi đang có sự nhầm lẫn này vì tôi không thể tìm thấy một phương pháp để biết nếu khách hàng đã nhận được tất cả dữ liệu từ máy chủ.EOF trong async_read() trong tăng :: asio
9
A
Trả lời
10
Nó cho biết kết nối đã đóng. Mặc dù được ghi là elswhere vẫn còn áp dụng:
Mã lỗi của
boost::asio::error::eof
cho biết kết nối đã bị đóng.
Nếu khách hàng cần biết rằng tất cả dữ liệu đã được nhận từ máy chủ, hãy xem xét hỗ trợ khung trong giao thức truyền thông. Boost.Asio cung cấp các hoạt động cấp cao hơn để giúp thực hiện điều này dễ dàng hơn. Ví dụ: async_read_until() có thể được sử dụng trên các giao thức có sử dụng một bộ ký tự nhất định để chỉ kết thúc thư và có thể sử dụng async_read() cho giao thức có độ dài cố định hoặc giao thức độ dài thay đổi với tiêu đề độ dài cố định.
Các vấn đề liên quan
- 1. tăng asio và endian
- 2. chọn chức năng tăng :: asio
- 3. Better tăng ASIO deadline_timer dụ
- 4. Tăng Asio và Web Sockets?
- 5. Boost.Asio: Operation hủy vào async_read
- 6. boost :: ASIO :: async_write() so với tăng :: ASIO :: write()
- 7. Tăng hiệu suất luồng đơn Asio
- 8. Tăng gián đoạn :: asio đồng bộ đọc?
- 9. động có kích thước tăng :: ASIO :: đệm
- 10. Tăng Asio Multithreaded TCP Synchronous Server
- 11. Lỗi EOF trong Imaplib
- 12. Cách lấy địa chỉ IP tăng :: asio :: ip :: tcp :: socket?
- 13. cách thêm hỗ trợ proxy để tăng :: asio?
- 14. Tăng cường asio và C++ 11 một trận đấu tốt?
- 15. Không tăng :: asio :: io_service bảo quản thứ tự xử lý?
- 16. Làm thế nào để tăng an toàn asio fork
- 17. Bỏ chặn đồng bộ đọc trên tăng :: asio :: serial_port
- 18. (c = getchar())! = EOF trong C#?
- 19. Tăng tốc Asio serial_port - cần trợ giúp với io
- 20. Đơn vị kiểm tra và tăng cường :: asio
- 21. Cho dù có một phụ trợ UDT cho tăng :: asio?
- 22. C++, tăng asio, nhận null chuỗi chấm dứt
- 23. cách sử dụng asio với các tệp thiết bị
- 24. boost :: asio :: acceptor - chấp nhận các kết nối mới trong khi các kết nối cũ vẫn mở
- 25. lỗi eof non trong file flex
- 26. Đọc các đối tượng Protobuf bằng cách sử dụng boost :: asio :: read_async
- 27. Hiệu suất tăng thấp.ASIO
- 28. tăng vấn đề trong windows 7
- 29. com.android.ddmlib.InstallException: EOF
- 30. Lặp đi lặp lại std :: di chuyển trên một tăng :: asio socket đối tượng trong C + + 11