黑马程序员技术交流社区
标题:
read方法
[打印本页]
作者:
李靖
时间:
2012-11-12 09:39
标题:
read方法
在参看java api时,提到
在某个输入可用、发生 I/O 错误或者已到达流的末尾前,此方法一直阻塞。
那么输入可用,和已经到达流的末尾,分别代表那种情况,怎么可用然输入不可用呢?
作者:
会飞的鱼
时间:
2012-11-12 11:46
输入可用:还没有读完,读了一部分了,并且程序也没发生异常死掉。但它并不是一直连续不断的读,他读一会,cpu切换了线程,所以他所在的线程就必须等待cpu资源,所以阻塞着嘛!!
发生I/0异常:read()本来就是调用底层的系统api在读数据,就算我们的程序发生了错误停止了,但还并没有close()我们调用的底层api,所以他并没有destory消亡。君不见我们在IO发生异常后,在finally里还要对他进行close(),有印象了吧!!
至于输入不可用了,你读写入流close()了,也就真不可用了嘛!!
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2