JDK的CompletionService提供了一种将生产新的异步任务与使用已完成任务的结果分离开来的服务,生产者 submit 执行的任务。使用者 take 已完成的任务,并按照完成这些任务的顺序处理它们的结果。例如,CompletionService 可以用来管理异步 IO ,执行读操作的任务作为程序或系统的一部分提交,然后,当完成读操作时,会在程序的不同部分执行其他操作,执行操作的顺序可能与...
分类:
编程语言 时间:
2014-06-15 18:22:52
阅读次数:
284
An IO call issynchronousif, when you call it, it
does not return until the operation is completed, or until enough time has
passed that your network s...
分类:
编程语言 时间:
2014-06-10 10:07:56
阅读次数:
273
通过多线程或多进程可以减弱阻塞IO的负面作用。/* For sockaddr_in
*/#include /* For socket functions */#include #include #include #include
#include #define MAX_LINE 16384char...
分类:
编程语言 时间:
2014-06-10 08:36:26
阅读次数:
290
The oldest solution that people still use for
this problem is select(). The select() call takes three sets of fds (implemented
as bit arrays): one for...
分类:
编程语言 时间:
2014-06-10 08:26:42
阅读次数:
325
(1)ACE庞大、复杂,适合大型项目。开源、免费,不依赖第三方库,支持跨平台。http://www.cs.wustl.edu/~schmidt/ACE.html(2)AsioAsio基于Boost开发的异步IO库,封装了Socket,简化基于socket程序的开发。开源、免费,支持跨平台。http:...
分类:
编程语言 时间:
2014-06-05 21:02:46
阅读次数:
336
MINA学习汇总Apache Mina Server
是一个网络通信应用框架,用于开发高性能和高可用性的网络应用程序。它主要是对基于TCP/IP、UDP/IP协议栈的通信框架(然,也可以提供JAVA
对象的序列化服务、虚拟机管道通信服务等),Mina 提供了事件驱动、异步(Mina 的异步IO 默认...
分类:
其他好文 时间:
2014-05-29 16:56:37
阅读次数:
334
异步IO
在操作系统中,程序运行的空间分为内核空间和用户空间。我们常常提起的异步I/O,其实质是用户空间中的程序不用依赖内核空间中的I/O操作实际完成,即可进行后续任务。同步IO的并行模式多线程单进程
多线程的设计之处就是为了在共享的程序空间中,实现并行处理任务,从而达到充分利用CPU的效果。多.....
分类:
Web程序 时间:
2014-05-19 12:46:00
阅读次数:
529
Apache Mina
是一个网络通信应用框架,也就是说,它主要是对基于TCP/IP、UDP/IP协议栈的通信框架(也可以提供JAVA
对象的序列化服务、虚拟机管道通信服务等),Mina 可以帮助快速开发高性能、高扩展性的网络通信应用,并且提供了事件驱动、异步(Mina 的异步IO
默认使用的是JA...
分类:
其他好文 时间:
2014-05-12 04:57:41
阅读次数:
236
正在学习《大型网站系统与JAVA中间件实践》,发现对BIO、NIO、AIO的概念很模糊,写一篇博客记录下来。先来说个银行取款的例子:同步 :
自己亲自出马持银行卡到银行取钱(使用同步IO时,Java自己处理IO读写)。异步 :
委托一小弟拿银行卡到银行取钱,然后给你(使用异步IO时,Java将IO读...
分类:
编程语言 时间:
2014-05-01 07:46:32
阅读次数:
373