随笔记录
IO操作(同步阻塞、同步非阻塞、异步)
2015-11-30 diaba


IO操作可以分为3类:



        同步阻塞(即早期的IO操作,<=jdk1.4)、同步非阻塞(NIO,>=jdk1.4)、异步(AIO,>=jdk1.7)。 


同步阻塞: 

    在此种方式下,用户进程在发起一个IO操作以后,必须等待IO操作的完成,只有当真正完成了IO操作以后,用户进程才能运行。JAVA传统的IO模型属于此种方式。 



同步非阻塞: 

    在此种方式下,用户进程发起一个IO操作以后边可返回做其它事情,但是用户进程需要时不时的询问IO操作是否就绪,这就要求用户进程不停的去询问,从而引入不必要的CPU资源浪费。其中目前JAVA的NIO就属于同步非阻塞IO。 

异步: 

    此种方式下是指应用发起一个IO操作以后,不等待内核IO操作的完成,等内核完成IO操作以后会通知应用程序。” 
发表评论:
昵称

邮件地址 (选填)

个人主页 (选填)

内容