http://stackoverflow.com/questions/12794107/why-do-i-need-strand-per-connection-when-using-boostasio/12801042

http://www.boost.org/doc/libs/1_51_0/doc/html/boost_asio/overview/core/strands.html

url1:  同一个socket上, 不能 read write读写不能并发。。。。 !!!!???? 这个感觉不可能吧。。。那也太弱智了。。

====确实不能对同一个socket同时读写,socket能封装了basic_socket_stream, 该类的对象不能支持同时进行读写操作。ps, fstream也不能支持同时读写吧。。

http://stackoverflow.com/questions/4078484/using-boost-sockets-do-i-need-only-one-io-service

只强调, 不能 对同一个socket同时多读, 或者同时多写。

http://stackoverflow.com/questions/6161725/boostasio-threadpool-vs-io-service-per-cpu-design

性能递升。。。

  1. single thread and a single io_service
  2. multiple threads, each invoking io_service::run() from a single io_service. Use strands for handlers that require access to shared data structures.
  3. io_service per cpu

http://en.highscore.de/cpp/boost/asio.html#asio_networkprogramming

high score boost里面有boost asio的用法

1) single thread && single io_service, 最简单, 性能最一般

2) multithread && single io_service

3) io_service per thread.  multi io_service.

这三个性能应该也是递增的。。。

http://stackoverflow.com/questions/11010530/do-we-need-multiple-io-service-per-thread-for-threaded-boostasio-server-with/11011080#11011080

single thread && single io_service性能肯定是不够的。

boost asio example

HTTP Server 2

An HTTP server using an io_service-per-CPU design.

HTTP Server 3

An HTTP server using a single io_service and a thread pool calling io_service::run().

http://stackoverflow.com/questions/8557067/thread-safe-coroutines-with-asio
http://www.crystalclearsoftware.com/soc/coroutine/coroutine/coroutine_thread.html
coroutine能使异步切碎的逻辑看起来像同步的方式写代码。
但是coroutine不能支持多线程, 只能一个ioservice一个线程的方式。

boost asio 性能与线程安全性相关推荐

  1. Boost.Asio入门

    原文地址:https://mmoaay.gitbooks.io/boost-asio-cpp-network-programming-chinese/content/Chapter1.html Boo ...

  2. boost::asio译文

    boost::asio译文 Christopher Kohlhoff Copyright © 2003-2012 Christopher M. Kohlhoff 以Boost1.0的软件授权进行发布( ...

  3. Boost.Asio技术文档汇总

    Christopher Kohlhoff Copyright © 2003-2012 Christopher M. Kohlhoff 以Boost1.0的软件授权进行发布(见附带的LICENSE_1_ ...

  4. boost::asio中文文档

    Christopher Kohlhoff Copyright © 2003-2012 Christopher M. Kohlhoff 以Boost1.0的软件授权进行发布(见附带的LICENSE_1_ ...

  5. Boost.Asio技术文档

    文章来源:http://blog.csdn.net/henreash/article/details/7469707 Boost.Asio是一个跨平台的网络及底层IO的C++编程库,它使用现代C++手 ...

  6. Boost.Asio 技术文档

    Christopher Kohlhoff Copyright © 2003-2012 Christopher M. Kohlhoff 以Boost1.0的软件授权进行发布(见附带的LICENSE_1_ ...

  7. muduo 与 boost asio 吞吐量对比

    muduo (http://code.google.com/p/muduo) 是一个基于 Reactor 模式的 C++ 网络库,我在编写它的时候并没有以高并发高吞吐为主要目标,但出乎我的意料,pin ...

  8. boost asio 应用方法学(二)——深入框架

    要用好它,就必须先了解它,而且不能停止于表面,必须深入到内部.而了解一件事物,先要了解它的框架,再了解它的细节.了解了框架,我们就有了提纲挈领的认识. 关于 boost asio 框架结构,在其文档中 ...

  9. boost asio 异步实现tcp通讯

    一.前言 boost asio可算是一个简单易用,功能又强大可跨平台的C++通讯库,效率也表现的不错,linux环境是epoll实现的,而windows环境是iocp实现的.而tcp通讯是项目当中经常 ...

最新文章

  1. R语言如何画个性化词云图
  2. Thymeleaf 常用属性
  3. hdu1428 spfa+记忆化搜索
  4. Windows环境下node.js的安装和配置
  5. 笔记2——C++ static关键字与一维动态数组的使用
  6. 汇编语言的码制转换小问题--求指教
  7. Coinbase在2020年下半年共收到执法机构2313次信息申请
  8. c语言 前置声明,我这个C代码 为什么加了函数前置声明反而会出错,不加倒可以...
  9. and design pro实现打印电子面单(菜鸟物流-可批量打印)
  10. 稀疏表示 过完备字典
  11. Python图像处理丨认识图像锐化和边缘提取的4个算子
  12. 医学图像DCM格式文件处理
  13. 关于JS跨域访问简述
  14. 批量保存网页为html文件的几种方法
  15. aa44444444444
  16. Rao-Cramer下界
  17. 视频教程-Python数据分析案例实战 视频课程-Python
  18. 利用python抓取指定格式数据并翻译
  19. Oracle使用Scott用户登录
  20. 【python】又拍云采集工具助手exe带python图片采集源码

热门文章

  1. 【数据结构与算法】3.二叉搜索树(BST)、c++代码
  2. mysql dba系统学习(5)二进制日志binlog之一
  3. Java并发编程(3):线程挂起、恢复与终止的正确方法(含代码)
  4. 2015 年你在科研上有哪些值得分享的进展和感悟?
  5. TeXworks显示行号、语法高亮、自动补全
  6. 稀疏性和L1正则化基础 Sparsity and Some Basics of L1 Regularization
  7. Scala基础教程(七):类和对象、特征
  8. 数字图像处理:第四章 点运算
  9. (基础篇)数组的详解与使用
  10. Nginx的负载均衡 - 保持会话 (ip_hash)