boost
manjaro21
想的开才会收获的更多
展开
-
Boost.Asio了解io_context工作原理
Boost.Asio可用于对I / O对象(例如套接字)执行同步和异步操作。I/O模型io_context对象是asio框架中的调度器,所有异步io事件都是通过它来分发处理的(io对象的构造函数中都需要传入一个io_service对象)。在同步事件中会使用一个默认的asio::io_context io_context;asio::ip::tcp::socket socket(io_context)同步IO主要执行流程![在这里插入图片描述](https://img-blog.csdnimg.原创 2020-06-17 22:59:27 · 9291 阅读 · 0 评论 -
Boost.Asio学习Proactor设计模式
- 原理图通俗理解:Proactor设计模式 事件处理好后,它通知我们他处理好了Reactor设计模式 感知事件后通知用户来处理Asynchronous Event Demultiplexer (异步事件分发器)阻塞等待事件在完成事件队列中发生,并将完成的事件返回给其调用者。Completion Handler (完成处理程序)处理异步操作的结果,这些是函数对象,通常使用boost::bind创建,也就是回调函数Proactor调用Asynchronous Event Demu原创 2020-06-17 23:04:04 · 393 阅读 · 0 评论 -
Boost.Asio初入了解
1.Boost Asio是一个跨平台、主要用于网络和其他一些底层输入/输出编程的C++库2.Boost asio中服务端的socket使用共享指针的方式,因为socket有移动构造函数,没有拷贝构造函数3.在普通的网络编程中,服务端存在两个文件描述符,一个是server,一个为当前端对端的client服务端:客户端:在Asio网络编程中,存在一个socket,即端对端的客户端的socket服务端:创建一个Io_Context实例 io_context指定向监听的端口endpoint原创 2020-06-17 22:58:07 · 255 阅读 · 0 评论