
Boost_Asio
文章平均质量分 82
Lasuerte
这个作者很懒,什么都没留下…
展开
-
Boost_Asio(1) io_service
// asio_ioservice.cpp : 定义控制台应用程序的入口点。//#include "stdafx.h"#include <boost/asio.hpp>#include <boost/shared_ptr.hpp>#include <boost/thread.hpp>#include <iostream>/* ...原创 2018-05-17 09:58:18 · 969 阅读 · 0 评论 -
Boost_Asio(2) bind
// asio_bind.cpp : 定义控制台应用程序的入口点。//#include "stdafx.h"#include <boost/bind.hpp>#include <iostream>void Func(){ std::cout << "func has been called!" << std::endl;}voi...原创 2018-05-17 10:04:07 · 437 阅读 · 0 评论 -
Boost_Asio(3) post和dispatch
// asio_post_dispatch.cpp : 定义控制台应用程序的入口点。///* 代码使用智能指针控制io_service,使用mutex控制各个进程间的输出互斥。work类维持io_service的生命周期, 然后使用post添加执行任务。 在此基础上我们再查看post与dispatch的区别: post 优先将任务排进处理队列,然后返回,任务会在某个时机被完成。 ...原创 2018-05-17 10:07:18 · 2682 阅读 · 0 评论 -
Boost_Asio(4) strand
// asio_strand.cpp : 定义控制台应用程序的入口点。//#include "stdafx.h"/* 代码中开启了两个线程运行io_service的run函数 未使用strand来post任务时候 显示是不确定的 而使用了strand后 显示是按照输入的次序依次显示*/#include <boost/asio.hpp>#include <bo...原创 2018-05-17 10:09:17 · 314 阅读 · 0 评论 -
Boost.Asio基本原理
Boost.Asio基本原理这一章涵盖了使用Boost.Asio时必须知道的一些事情。我们也将深入研究比同步编程更复杂、更有乐趣的异步编程。网络API这一部分包含了当使用Boost.Asio编写网络应用程序时必须知道的事情。Boost.Asio命名空间Boost.Asio的所有内容都包含在boost::asio命名空间或者其子命名空间内。boost::asio:这是核心类和函数所在的地方。重要的类...转载 2018-05-17 10:33:55 · 977 阅读 · 0 评论 -
Boost.asio学习之Tcp异步通信Demo
一、服务器1.服务器自己创建io_service,endpoint,设定ip与port;2.创建两个类,一个接受连接,其中acceptor使用io_service与endpoint两个参数初始化,类成员变量io_service需要用引用。开始async_accept后会阻塞在这里,其中socket参数由session类getSocket获取,当有客户端连接后启用回调函数,回调函数判断是否连接成功,...原创 2018-05-31 16:54:41 · 2369 阅读 · 0 评论