何时在asio中使用异步操作

时间:2009-04-04 16:40:15

标签: multithreading boost asynchronous boost-asio

我应该何时在boost :: asio中使用异步操作,而不是在单独的线程中使用同步操作?

2 个答案:

答案 0 :(得分:5)

Rationale部分有帮助吗?

  

大多数程序以某种方式与外界交互,无论是通过文件,网络,串行电缆还是控制台。有时,与网络一样,单个I / O操作可能需要很长时间才能完成。这对应用程序开发提出了特殊的挑战。

     

Boost.Asio提供了管理这些长时间运行操作的工具,无需程序使用基于线程和显式锁定的并发模型。

答案 1 :(得分:3)

我强烈建议您尽可能使用异步方法。异步调用不一定会创建一个线程,因此通过坚持异步操作,您可以减少与线程相关的开销。另外,线程通常难以开发和维护。

希望它有所帮助。