阻塞:顾名思义,就是指在执行设备操作时若不能获得资源则挂起操作,直到满足可操作的条件后再进行操作,被挂起的进程进入休眠状态,被从调度器的运行队列移走,直到等待的条件满足。非阻塞:就是反过来,进程在不能进行设备操作时并不挂起,它或者放弃,或者不停的查询,直到可..
分类:
系统相关 时间:
2015-06-01 20:37:37
阅读次数:
261
最近在研究java IO、NIO、NIO2(或者称AIO)相关的东西,有些概念还是要明确下。 按照《Unix网络编程》的划分,IO模型可以分为:阻塞IO、非阻塞IO、IO复用、信号驱动IO和异步IO,按照POSIX标准来划分只分为两类:同步IO和异步IO。如何区分呢?首先一个IO操作其实分成了两个....
分类:
其他好文 时间:
2015-05-17 23:26:19
阅读次数:
162
1.IO操作其实分成了两个步骤:发起IO请求和实际的IO操作
2.阻塞IO和非阻塞IO的区别在于第一步,发起IO请求是否会被阻塞,如果阻塞直到完成那么就是传统的阻塞IO,如果不阻塞,那么就是非阻塞IO。
3.同步IO和异步IO的区别就在于第二个步骤是否阻塞,如果实际的IO读写阻塞请求进程,那么就是同步IO,因此阻塞IO、非阻塞IO、IO服用、信号驱动IO都是同步IO,如果不阻塞,而是操...
分类:
其他好文 时间:
2015-05-12 17:15:09
阅读次数:
167
此文章为转载,如有侵权,请联系本人。转载出处,http://blog.chinaunix.net/uid-28458801-id-4464639.html同步(synchronous) IO和异步(asynchronous) IO,阻塞(blocking) IO和非阻塞(non-blocking)I...
分类:
其他好文 时间:
2015-05-06 01:24:18
阅读次数:
233
先来实现一个简单的服务器,这个服务器简单的回送任何客户端的输入EchoServer.javapackage server;import java.io.*;
import java.net.*;
import java.util.*;/**
* This program implements a simple server that listens to port 8189 and echoes...
分类:
其他好文 时间:
2015-05-05 10:38:15
阅读次数:
153
java NIO 就是NEW I O,他与传统IO的最大的区别是 它是非阻塞IO。
Java NIO和IO之间的主要差别:
IO NIO
面向流 面向缓冲
阻塞IO 非阻塞IO
无 选择器
他们各自适用于不同的环境,这里只简单的说明其区别,具...
分类:
编程语言 时间:
2015-04-29 13:34:35
阅读次数:
166
Linux设备驱动中的阻塞与非阻塞IO:
1.Linux设备驱动中的阻塞与非阻塞总结:http://m.blog.csdn.net/blog/dongteen/17264501
2.Linux设备驱动中的阻塞与非阻塞IO:http://m.blog.csdn.net/blog/dongteen/17264501
3.Linux设备驱动中的阻塞与非阻塞I/O实例...
分类:
系统相关 时间:
2015-04-28 14:08:13
阅读次数:
176
Java NIO:浅析I/O模型一.什么是同步?什么是异步?二.什么是阻塞?什么是非阻塞?三.什么是阻塞IO?什么是非阻塞IO?四.什么是同步IO?什么是异步IO?五.五种IO模型六.两种高性能IO设计模式请尊重作者劳动成果,转载请标明原文链接:http://www.cnblogs.com/dolp...
分类:
编程语言 时间:
2015-04-21 11:06:35
阅读次数:
135
RHEL6安装python包tornadotornado是使用Python开发的全栈式(full-stack)Web框架和异步网络库,最早由Friendfeed开发。通过使用非阻塞IO,Tornado可以处理数以万计的开放连接,是long polling、WebSockets和其他需要为用户维护长连接应用的理想选择。tornado 跟其他主流的Web服务器框架(主要是Python框架)不同是采用e...
分类:
编程语言 时间:
2015-04-08 16:30:21
阅读次数:
237
Java NIO模式的Socket通信,是一种同步非阻塞IO设计模式,它为Reactor模式实现提供了基础。
下面看看,Java实现的一个服务端和客户端通信的例子。
NIO模式的基本原理描述如下:
服务端打开一个通道(ServerSocketChannel),并向通道中注册一个选择器(Selector),这个选择器是与一些感兴趣的操作的标识(SelectionKey,即通过这个标...
分类:
编程语言 时间:
2015-04-05 23:36:20
阅读次数:
302