E-COM-NET
首页
在线工具
Layui镜像站
SUI文档
联系我们
推荐频道
Java
PHP
C++
C
C#
Python
Ruby
go语言
Scala
Servlet
Vue
MySQL
NoSQL
Redis
CSS
Oracle
SQL Server
DB2
HBase
Http
HTML5
Spring
Ajax
Jquery
JavaScript
Json
XML
NodeJs
mybatis
Hibernate
算法
设计模式
shell
数据结构
大数据
JS
消息中间件
正则表达式
Tomcat
SQL
Nginx
Shiro
Maven
Linux
Boost.Asio
Boost.Asio-其他特性
Boost.Asio-其他特性这章我们讲了解一些
Boost.Asio
不那么为人所知的特性。标准的stream和streambuf对象有时候会更难用一些,但正如你所见,它们也有它们的益处。
mmoaay
·
2015-02-12 11:00
C++
异步
boost
asio
协程
同步VS异步
同步VS异步
Boost.Asio
的作者做了一个很惊艳的工作:它可以让你在同步和异步中自由选择,从而更好地适应你的应用。
mmoaay
·
2015-02-12 11:00
C++
异步
网络编程
boost
asio
Boost.Asio
,libevent和ACE之间关于Socket编程的比较(★firecat推荐★)
文章来源:http://blog.163.com/miky_sun/blog/static/3369405201041753652505/ACE官网 http://download.dre.vanderbilt.edu/boost官网 http://www.boost.org/boost sourceforge http://sourceforge.net/projects/boost/files
libaineu2004
·
2015-02-09 14:00
libevent
ACE
boost
asio
Boost.Asio
C++ Network Programming翻译的校对稿
Boost.AsioC++NetworkProgramming翻译的校对稿将发布在gitbook上:大家有兴趣可以一起来校对目前校对稿仍然在持续不断的添加中,预计明天会全部校对完毕,届时我会将校对稿以pdf的形式发布到csdn的下载频道中,以方便大家更好的阅读全书。附上链接地址:https://www.gitbook.com/book/mmoaay/boost-asio-cpp-network-p
mmoaay
·
2014-12-25 09:00
C++
网络编程
翻译
asio
boost
boost::asio编程-同步TCP
boost.asio
库是一个跨平台的网络及底层IO的C++编程库,它使用现代C++手法实现了统一的异步调用模型。
boost.asio
库支持TCP、UDP、ICMP通信协议。
anda0109
·
2014-12-17 10:00
Boost.Asio
c++ 网络编程翻译(30)[完结]
PS:至此终于完成了Boost.AsioC++networkprogramming一书的翻译,这是我人生第一本完整翻译的书,从开始的磕磕绊绊,到最后小有心得,我收获很多。我将把这个系列的博客进行整理和校对,希望有兴趣的人可以帮我一起,来给大家提供更好更专业的阅读体验。句柄追踪信息到文件默认情况下,句柄的追踪信息被输出到标准错误流(相当于std::cerr)。你想把输出重定向到其他地方的可能性是非常
mmoaay
·
2014-11-26 08:00
C++
异步
网络编程
asio
boost
Boost.Asio
c++ 网络编程翻译(29)
Boost.Asio-进阶话题这一章对
Boost.Asio
的一些进阶话题进行了阐述。
mmoaay
·
2014-11-25 13:00
C++
异步
网络编程
asio
boost
Boost.Asio
c++ 网络编程翻译(28)
协程
Boost.Asio
的作者在2009-2010年间实现了非常酷的一个部分,协程,它能让你更简单地设计你的异步应用。
mmoaay
·
2014-11-21 08:00
C++
异步
网络编程
boost
asio
Boost.Asio
c++ 网络编程翻译(27)
streambuf类我之前说过,streambuf继承自std::streambuf。就像std::streambuf本身,它不能拷贝构造。另外,它有一些额外的方法,如下:streambuf([max_size,][allocator]):这个方法构造了一个streambuf对象。你可以选择指定一个最大的buffer大小和一个分配器,分配器用来在需要的时候分配/释放内存。prepare(n):这个
mmoaay
·
2014-11-19 14:00
C++
异步
网络编程
boost
asio
Boost.Asio
c++ 网络编程翻译(26)
Boost.Asio-其他特性这章我们讲了解一些
Boost.Asio
不那么为人所知的特性。标准的stream和streambuf对象有时候会更难用一些,但正如你所见,它们也有它们的益处。
mmoaay
·
2014-11-18 10:00
C++
异步
网络编程
asio
boost
Boost.Asio
c++ 网络编程翻译(25)
代理实现代理一般位于客户端和服务端之间。它接受客户端的请求,可能对请求进行修改,然后接着把请求发送到服务端。然后从服务端取回结果,也可能对结果进行修改,然后接着把结果发送到客户端。代理有什么特别的,我们讲述它的目的在于:对每个连接,你都需要两个sokect,一个给客户端,另外一个给服务端。这些都给实现一个代理增加了不小的难度。实现一个同步的代理应用比异步的方式更加复杂;数据可能同时从两个端过来(客
mmoaay
·
2014-11-17 13:00
C++
异步
网络编程
boost
asio
Boost.Asio
c++ 网络编程翻译(14)
保持活动假如,你需要做下面的操作:io_serviceservice;ip::tcp::socketsock(service);charbuff[512];...read(sock,buffer(buff));在这个例子中,sock和buff的存在时间都必须比read()调用的时间要长。也就是说,在调用read()返回之前,它们都必须有效。这就是你期望的;你传给一个方法的所有参数在参数内部都必须有
mmoaay
·
2014-10-15 08:00
C++
asio
boost
Boost.Asio
c++ 网络编程翻译(13)
异步工作异步工作不仅仅指用异步地方式接受客户端到服务端的连接,异步从一个socket读取或者写入到socket。它包含了所有可以异步执行的操作。默认情况下,你是不知道每个异步handler的调用顺序的。除了通常的异步调用(来自异步socket的读取/写入/接受)。你可以使用service.post()来使你的自定义方法被异步地调用。例如:#include#include#include#inclu
mmoaay
·
2014-10-13 09:00
C++
asio
boost
Boost.Asio
c++ 网络编程翻译(12)
异步run(),run_one(),poll(),poll_ one()为了实现监听循环,io_service类提供了4个方法,比如:run(),run_one(),poll()和poll_one()。当大部分时间你使用service.run()就可以。你会在这里学习到其他方法完成了什么。持续运行再一次说明,如果有等待执行的操作,run()会一直执行,直到你手动调用io_service::stop
mmoaay
·
2014-10-10 14:00
C++
asio
boost
Boost.Asio
c++ 网络编程翻译(11)
*_at方法这些方法在一个流上面做随机存取操作。你来指定read和write操作从什么地方开始(offset):async_read_at(stream,offset,buffer[,completion],handler):这个方法在一个指定的流上从offset处开始执行一个异步的read操作,当操作结束时,他会调用handler。handler的格式为:voidhandler(constboo
mmoaay
·
2014-10-09 09:00
C++
asio
boost
Boost.Asio
c++ 网络编程翻译(10)
read/write方法这些方法对一个流进行读写操作(可以是套接字,或者其他表现的像流的类):async_read(stream,buffer[,completion],handler):这个方法异步地从一个流读取。结束时,处理方法被调用。处理方法的格式是:voidhandler(constboost::system::error_code&err,size_tbytes);。你可以选择指定一个完
mmoaay
·
2014-09-28 10:00
C++
asio
boost
Boost.Asio
c++ 网络编程翻译(8)
TCPVSUDPVSICMP就像我之前所说,不是所有的成员方法在所有的套接字类中都可用。我做了一个包含成员函数不同点的列表。如果一个成员函数没有出现在这,说明它在所有的套接字类都是可用的。名字 TCP UDP ICMPasync_read_some 是
mmoaay
·
2014-09-25 08:00
C++
boost
asio
Boost.Asio
c++ 网络编程翻译(7)
Boost.Asio
基本原理这一章涵盖了你使用
Boost.Asio
时必须知道的一些事情。我们也将深入研究比同步编程更机警、更有乐趣的异步编程。
mmoaay
·
2014-09-24 10:00
C++
asio
boost
Boost.Asio
c++ 网络编程翻译(6)
io_service类你应该已经发现大部分使用
Boost.Asio
编写的代码都会使用几个ios_service的实例。
mmoaay
·
2014-09-23 08:00
C++
asio
boost
Boost.Asio
c++ 网络编程翻译(1)
第一次翻译,希望大家多多指正实战出精华Boost.AsioC++网络编程用具体的C++网络编程例子来提升你的技能JohnTorjan用具体的C++网络编程例子来提升你的技能Copyright©2013PacktPublishing版权所有,除了在鉴定文章或者评论中进行简单引用,如果没有经过出版者事先的书面授权,该书的任何部分都不能被转载、存储在检索系统中、或者以任何形式和方式传阅。在这本书准备发行
mmoaay
·
2014-09-18 14:00
C++
boost
asio
Boost.Asio
简介
Boost.Asio
简介简介
Boost.Asio
是一个跨平台的C++库,主要用于网络和其他一些底层的I/O编程。
蓝色理想
·
2014-08-11 22:00
boost.asio
源码剖析(四) ---- asio中的泛型概念(concepts)
*Protocol(通信协议) Protocol,是asio在网络编程方面最重要的一个concept。在第一章中的levelX类图中可以看到,所有提供网络相关功能的服务和I/O对象都需要Protocol来确定一些细节。Protocol的约束摘要如下:1classprotocol 2{ 3public: 4///Obtainanidentifierforthetypeoftheprotoc
于洋子
·
2014-06-19 07:00
boost.asio
源码剖析(五) ---- 泛型与面向对象的完美结合
有人说C++是带类的C;有人说C++是面向对象编程语言;有人说C++是面向过程与面向对象结合的语言。类似的评论网上有很多,虽然正确,却片面,是断章取义之言。 C++是实践的产物,C++并没有为了成为某某类型的语言而设计,而是一切以工程实践为目的,一切以提升语言能力为目的。 1983年C++诞生之时,由于兼容C语言而天生拥有了面向过程编程的能力; 1989年推出的2.0版,C
于洋子
·
2014-06-19 07:00
boost.asio
源码剖析
一. 前言二. 架构浅析三. 流程分析 *常见流程分析之一(Tcp异步连接) *常见流程分析之二(Tcp异步接受连接) *常见流程分析之三(Tcp异步读写数据) *常见流程分析之四(Tcp强制关闭连接) *常见流程分析之五(Tcp优雅地关闭连接)四. asio中的泛型concepts *Protocol *InternetProtocol *ConstBuffer
于洋子
·
2014-06-19 07:00
boost.asio
源码剖析(三) ---- 流程分析
*常见流程分析之一(Tcp异步连接) 我们用一个简单的demo分析Tcp异步连接的流程:1#include 2#include 3 4//异步连接回调函数 5voidon_connect(boost::system::error_codeec) 6{ 7if(ec)//连接失败,输出错误码 8std::coutsocket; reactor的定义如下: #ifdefined
于洋子
·
2014-06-19 07:00
boost.asio
源码剖析(二) ---- 架构浅析
*架构浅析 先来看一下asio的0层的组件图。 (图1.0) io_object是I/O对象的集合,其中包含大家所熟悉的socket、deadline_timer等对象,主要功能是提供接口给用户使用。 services服务是逻辑功能的实现者,其中包含提供定时功能的deadline_timer_service、提供socket相关功能的win_iocp_
于洋子
·
2014-06-19 07:00
boost.asio
源码剖析(一) ---- 前 言
boost.asio
是Boost库中非常著名的I/O组件
于洋子
·
2014-06-19 07:00
boost::bind
于是去google搜索其原理,然后看到一篇 好文 ,这篇博客的作者也是
Boost.Asio
的作者。
invictus_lee
·
2014-06-03 11:00
在vs2010中使用openssl
在vs2010中使用openssl(以avhttp为例)avhttp是一个基于
Boost.Asio
实现的HTTP客户端开发工具库.它支持HTTP(1.0/1.1)、HTTPS,断点续传,多线程并发下载,
h2appy
·
2014-05-07 18:25
OpenSSL
boost::asio译文
2012ChristopherM.Kohlhoff以Boost1.0的软件授权进行发布(见附带的LICENSE_1_0.txt文件或从http://www.boost.org/LICENSE_1_0.txt)
Boost.Asio
chexlong
·
2014-05-03 21:00
Linux下
Boost.Asio
Proactor模式实现分析
而
Boost.Asio
的说明文档中明确其采用Proactor模式实现了异步IO,也就是说用户在发起async_read后,可以去进行其它操作,数据将会从内核
gigglesun
·
2014-04-23 16:00
epoll
asynchronous
Reactor
procator
Boost.Asio
介绍--之四
下面介绍
Boost.Asio
的异常处理和计时器(timer)一 Exceptions
Boost.Asio
提供两种异常处理方式:通过try/catch的方式获取异常或者通过错误码的方式
gigglesun
·
2014-04-07 11:00
Boost.Asio
介绍--之三
如果说io_service是
Boost.Asio
的大脑的话,那么它的成员函数dispatch和post就是它的左臂右膀了。
gigglesun
·
2014-04-04 17:00
boost
asio
boost
Boost.Asio
介绍--之二
上一篇介绍了
Boost.Asio
的一些特性,但是相对抽象和离散,这篇博客从
Boost.Asio
的基础知识一步步深入,读完之后对
Boost.Asio
会有全面的了解和掌握。
gigglesun
·
2014-03-30 23:00
libev入门
为了实现视频服务器,研究了开源视频服务器DarwinStreamingServer,Reactor并发编程设计模式,同时还评估了
Boost.Asio
、ACE、libevent以及libev等网络编程相关的库
dodo_check
·
2014-03-11 14:00
Boost.Asio
的基本剖析(Basic
Boost.Asio
Anatomy)
Boost.Asio
的基本剖析(Basic
Boost.Asio
Anatomy)原文链接:http://www.boost.org/doc/libs/1_55_0/doc/html/boost_asio
jmy5945hh
·
2014-02-21 22:00
异步
同步
boost
asio
(原创)谈谈
boost.asio
的异步发送
在上一篇博文中提到asio的异步发送稍微复杂一点,有必要单独拿出来说说。asio异步发送复杂的地方在于: 不能连续调用异步发送接口async_write,因为async_write内部是不断调用async_write_some,直到所有的数据发送完成为止。由于async_write调用之后就直接返回了,如果第一次调用async_write发送一个较大的包时,马上又再调用async_write发
·
2013-12-23 11:00
boost
(原创)如何使用
boost.asio
写一个简单的通信程序(二)
先说下上一篇文章中提到的保持io_service::run不退出的简单办法。因为只要异步事件队列中有事件,io_service::run就会一直阻塞不退出,所以只要保证异步事件队列中一直有事件就行了,如何让异步事件队列中一直有事件呢?一个简单的办法就是循环发起异步读操作,如果对方一直都不发数据过来,则这个异步读事件就会一直在异步事件队列中,这样io_service::run就不会退出了。但是这
·
2013-12-12 15:00
boost
libev入门
为了实现视频服务器,研究了开源视频服务器DarwinStreamingServer,Reactor并发编程设计模式,同时还评估了
Boost.Asio
、ACE、libevent以及libev等网络编程相关的库
woxiaozhi
·
2013-11-26 13:00
【兴趣爱好】之:
Boost.Asio
和ACE之间关于Socket编程的比较
ACE是一个很成熟的中间件产品,为自适应通讯环境,但它过于宏大,一堆的设计模式,架构是一层又一层,对初学者来说,有点困难。 ASIO是基本Boost开发的异步IO库,封装了Socket,简化基于socket程序的开发。最近分析ASIO的源代码,让我无不惊呀于它设计。在ACE中开发中的内存管理一直让人头痛,ASIO的出现,让我看到新的曙光,成为我新的好伙伴。简单地与ACE做个比较。boost::as
xuqiang918
·
2013-11-07 11:00
ACE
asio
boost::asio::ip::tcp实现网络通信的小例子
服务端:
Boost.Asio
是一个跨平台的网络及底层IO的C++编程库,它使用现代C++手法实现了统一的异步调用模型。
andinker
·
2013-10-30 20:00
boost
boost.asio
包装类st_asio_wrapper开发教程
一:什么是st_asio_wrapper它是一个c/s网络编程框架,基于对
boost.asio
的包装(最低在boost-1.49.0上调试过),目的是快速的构建一个c/s系统;二:st_asio_wrapper
·
2013-10-28 15:00
boost
Boost.Asio
性能测试
今天看到http://my.oschina.net/u/200693/blog/3446230测评asio的效率,结果如下表:c++boost::asioconnect=10000,activeconnect=100,req=148791,time=60,req/sec=2479.85,msec/req=40.343erlangkernel-pollfalseconnect=10000,activ
CodingSir
·
2013-10-27 22:22
Boost.Asio
性能测试
今天看到 http://my.oschina.net/u/200693/blog/3446230 测评asio的效率,结果如下表:c++boost::asioconnect=10000,activeconnect=100,req=148791,time=60,req/sec=2479.85,msec/req=40.343erlangkernel-pollfalseconnect=10000,act
educast
·
2013-10-27 22:00
Boost.Asio
的使用技巧
AsioproactorI/O服务work类run()vspoll()stop()post()vsdispatch()buffer类缓冲区管理I/O对象socket信号处理定时器strand参考最近尝试使用了一下
Boost.Asio
educast
·
2013-10-27 22:00
boost.asio
防止恶意空连接的方法
网络服务器通常要应对一些意外情况,如空连接行为,指在遇到客户端连接后不进行任何操作,并很可能在大量空连接情况下导致服务器资源耗尽而无法工作。以下代码主要工作在连接后首次接收客户端消息的环节添加一个timer,并在指定时间后检测是否已接收到消息(验证消息环节此处略去),如果没有收到消息则可认为这是一个非正常连接,并马上断开。timer使用boost::asio::deadline_timer,相对比
educast
·
2013-10-27 10:00
Boost.Asio
和ACE之间关于Socket编程的比较
ACE是一个很成熟的中间件产品,为自适应通讯环境,但它过于宏大,一堆的设计模式,架构是一层又一层,对初学者来说,有点困难。 ASIO是基本Boost开发的异步IO库,封装了Socket,简化基于socket程序的开发。最近分析ASIO的源代码,让我无不惊呀于它设计。在ACE中开发中的内存管理一直让人头痛,ASIO的出现,让我看到新的曙光,成为我新的好伙伴。简单地与ACE做个比较。boost::as
educast
·
2013-10-27 08:00
boost asio的async方式bind
用了这么久
boost.asio
,感觉写得实在好。async方式比较有意思。
gotham
·
2013-09-08 22:00
async
bind
boost
asio
BOOST网络库-ASIO
本文经作者同意于本站刊登
Boost.Asio
是利用当代C++的先进方法,跨平台,异步I/O模型的C++网络库.1.网络库:VC2005注意在属性->C/C++->命令行中加入-DBOOST_REGEX_NO_LIB
Augusdi
·
2013-09-07 20:00
两种高性能 I/O 设计模式 Reactor 和 Proactor
曾经在一个项目中用到了网络库libevent,也学习了一段时间,其内部实现所用到的就是Reactor,所知道的还有ACE;Proactor模式的库有
Boost.Asio
,ACE,暂时没有用过。
·
2013-08-22 22:00
Proactor
Reactor
上一页
2
3
4
5
6
7
8
9
下一页
按字母分类:
A
B
C
D
E
F
G
H
I
J
K
L
M
N
O
P
Q
R
S
T
U
V
W
X
Y
Z
其他