[quote]inputStream的read()和write()方法在执行时都将阻塞,直至字节确实被读入或写出.这就意味着如果流不能被立即访问,那么当前的线程将被阻塞.这使得这个方法等待指定的流变为可用的这段时间里,其他的线程就有机会去执行有用的工作.[/quote]
阻塞的情况下,其他的线程是没有机会去执行
[quote]available方法使我们可以去检查当前可用于读入的字节数量,这意味着像下面这样的代码片段就不可能被阻塞:
int byteavailable=in.available();
if(byteavailable>0){
byte[] data=new byte[byteavailable];
in.read(data);
}[/quote]
这段代码不阻塞,又是什麽意思啊?