次のasync_write()は、前の async_write() が終了したときに実行する必要があることを知っています(エラーの有無にかかわらず、終了したとき)。
async_write() 呼び出しを行っているときに、これらのいずれかが何らかの理由で長い時間がかかる場合、または終了しない場合に何が起こるかを知りたいです (同期操作のようにタイムアウトはないと仮定します)。この操作が失敗したと見なされるのはいつですか? 終わらないその操作が最終的にOSによって内部的に削除されるのはいつですか? たぶん、タイムアウトが関係していて、私の仮定が間違っていますか?
つまり、書き込み操作は OS に送信され、無期限にブロックされる可能性がありますか? したがって、ハンドラーが呼び出されることはなく、次の async_write() が呼び出されることもありません。
注:複数のスレッドで run() を呼び出していると想定していますが、書き込み操作は順番に送信する必要があるため、書き込みハンドラーがストランドでラップされていると想定しています。
お時間をいただきありがとうございます。