如何在幕后实现Boost.Asio等异步I / O库?

时间:2016-03-01 14:46:31

标签: c++ multithreading asynchronous boost

  

如何在幕后实现Boost.Asio等异步I / O库?

我想知道这些异步库是如何实现的。我对 Windows API 有点熟悉,但没有注意到任何标记为异步的特定API调用。

异步功能是否在操作系统API之上的代码中实现,如果是,那么这是如何完成的?或者库只是调用异步API操作吗?

我知道事件循环和处理回调执行的I / O线程的概念。是否可以为每个异步操作生成一个线程,等待{strong>同步操作如socket.recv()完成,然后执行提供的回调?

0 个答案:

没有答案