簡體   English   中英

boost :: asio中的async_read()中的EOF

[英]EOF in async_read() in boost::asio

當async_read_some()返回EOF異常時,它意味着服務器停止發送數據,或者是否意味着連接已關閉。 我有這種困惑,因為我無法找到一種方法來了解客戶端是否已從服務器接收到所有數據。

它表示連接已關閉。 雖然有文件證明它仍然適用:

boost::asio::error::eof的錯誤代碼表示對等方已關閉連接。

如果客戶端需要知道已從服務器接收到所有數據,則考慮支持通信協議中的成幀。 Boost.Asio提供更高級別的操作,以幫助簡化這一過程。 例如, async_read_until()可用於協議,其中某些字符集用於指示消息的結束,而async_read()可用於固定長度協議或具有固定長度標頭的可變長度協議。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM