最近想学习一下libevent,就先翻译一下libevent的官方文档吧.英文原文链接:http://www.wangafu.net/~nickm/libevent-book/01_intro.html大部分编程初学者都是从阻塞IO开始的。何谓阻塞IO?,即你进行一个IO调用时,除非这个操作完成,或...
分类:
其他好文 时间:
2014-08-20 22:27:22
阅读次数:
303
Mina框架断包、粘包问题解决方案
Apache Mina Server 是一个网络通信应用框架,也就是说,它主要是对基于TCP/IP、UDP/IP协议栈的通信框架(当然,也可以提供JAVA 对象的序列化服务、虚拟机管道通信服务等),Mina 可以帮助我们快速开发高性能、高扩展性的网络通信应用,Mina 提供了事件驱动、异步(Mina 的异步IO 默认使用的是JAVA NIO 作为底层支持)...
分类:
其他好文 时间:
2014-08-07 15:49:50
阅读次数:
259
GetAvaliableThread(out workerThreadCount,out iocompletedThreadCount) 函数居然一次返回了两个变量.线程池里的线程按照公用被分成了两大类:工作线程和IO线程,或者IO完成线程,前者用于执行普通的操作,后者专用于异步IO,比如文件和网络...
分类:
编程语言 时间:
2014-08-06 11:51:01
阅读次数:
233
/// 用完成例程(Completion Routine)实现的重叠I/O模型/// 异步IO模型/// 用完成例程来实现重叠I/O比用事件通知简单得多。在这个模型中,主线程只用不停的接受连接/// 即可;辅助线程判断有没有新的客户端连接被建立,如果有,就为那个客户端套接字激活一个/// 异步的WS...
分类:
其他好文 时间:
2014-08-03 18:00:25
阅读次数:
250
一、 异步IO 说到重叠模型首先还是提一下异步IO比较好,因为从本质上讲,重叠模型也是一种异步IO模型。 我们知道,相对于计算机执行的其他操作而言,设备IO(文件、管道、套接字等)是比较慢的。于是在多线程结构中就考虑到采用异步的方式进行设备读写操作,即我们告诉系统对设备的读写数据,而同时应用程序的其...
分类:
其他好文 时间:
2014-07-31 19:38:17
阅读次数:
312
关于 windows IOCP有人说 windows IOCP 是 windows 上最好的东西。 IOCP 是真正的异步 IO,意味着每次发起一个 IO 请求,该调用本身则立即返回, 而包括 IO 操作和数据从内核缓冲区到用户缓冲区之间的拷贝都由系统完成,直到这个过程结束系统才通知用户进程。 li...
1、关于IOCP IOCP即IO完成端口,是一种高伸缩高效率的异步IO方式,一个设备或文件与一个IO完成端口相关联,当文件或设备的异步IO操作完成的时候,去IO完成端口的【完成队列】取一项,根据完成键(Complete Key)来判断是哪个设备或文件的操作完成,然后再根据实际情况进行处理。2、相关....
上文讨论了PAIR/PAIR,REQ/REP两种模式,现在看看PUB/SUB和PUSH/PULL模式。PUB/SUB:发布订阅模式,跟我们订阅新闻类似的,采用异步IO,多对多模式,如果没有订阅,服务端发送的消息直接丢弃掉。pub_server.pyimportzmq
importrandom
importsys
importtime
port="5556"
iflen(s..
分类:
其他好文 时间:
2014-06-28 06:38:09
阅读次数:
649
IO模型io_service对象是asio框架中的调度器,所有异步io事件都是通过它来分发处理的(io对象的构造函数中都需要传入一个io_service对象)。asio::io_serviceio_service;asio::ip::tcp::socketsocket(io_service);在as...
分类:
其他好文 时间:
2014-06-18 19:28:34
阅读次数:
174