boost::asio::ip::tcp::socket
関連する書き込み機能について質問があります。TCP に関するウィキペディアの記事を読むと、TCP には確認メッセージとチェックサムが含まれていることがわかります。残念ながら、これに関する情報はboost::asioのリファレンスでは見つかりません。私が理解している限りでは、boost::asio は TCP の OS 実装を使用しており、これには両方の機能が含まれている必要があります。
私の質問は、で呼び出されたときに関数boost::asio::write
またはboost::asio::async_write
保証を行うものですboost::asio::ip::tcp::socket
。関数が返された場合、またはコールバック関数がエラーなしで呼び出された場合、それはどういう意味ですか。いくつかの可能性を想像できます:
- 基本的に何もありません。プログラムがOSにデータを送信するように指示したことを意味するだけで、それ以上のことはありません。
- データは進行中です。これは、OS がデータを送信したことを認識したことを意味します。
- データが到着しました。つまり、相手側からの確認メッセージが受信されました。
- 3. と同じように、データが到着し、破損していません。さらに、チェックサムが加算されます。
4 でない場合、boost::asio を使用してこれを強制する方法はありますか (自分で実装するのではなく、boost::asio 内で意味します)。