2012-03-03 19 views
1

他のスレッドでboost :: asio :: serial_port :: async_write_some()とasio :: io_service :: run()を呼び出します。 "async_write_some"にコールバックがあります。このコールバックが(おそらくいくつかのエラーコードで)最終的に呼び出されると、私は安全に仮定できますか?どのような状況でそれは本当ではないのですか?boost :: asioのasync_ *のハンドラが常に呼び出されることは保証されていますか?

答えて

4

このコールバックは最終的に(場合によってはエラーコードとともに)呼び出されることはありますか?

だと思います。

それは本当ですか?

データが送信される前にio_service :: stopメソッドが呼び出されます。

2

io_serviceが実行されている限り、補完ハンドラは、非同期操作が完了した後に呼び出されることが保証されています(正常かどうか)。

関連する問題