黑马程序员技术交流社区
标题:
不理解
[打印本页]
作者:
田向向
时间:
2012-7-6 15:49
标题:
不理解
本帖最后由 田向向 于 2012-7-6 16:48 编辑
import java.io.InputStream;
import java.util.concurrent.ExecutorService;
import java.util.concurrent.Executors;
public class CloseResource {
public static void main(String[] args) throws Exception {
ExecutorService exec = Executors.newCachedThreadPool();
exec.execute(new IOBlockedTest(System.in));
exec.shutdownNow();
System.in.close();
System.out.println("done");
}
}
class IOBlockedTest implements Runnable {
private InputStream in;
public IOBlockedTest(InputStream is) {
in = is;
}
public void run() {
try {
System.out.println("Waiting for read():");
in.read();
} catch (Exception e) {
if (Thread.currentThread().isInterrupted()) {
System.out.println("Interrupted from blocked I/O");
} else {
throw new RuntimeException(e);
}
}
System.out.println("Exiting IOblocked.run()");
}
}
为什么运行结果会只输出了Waiting for read():,哪位高手能给我解释一下这个程序?
作者:
李伟
时间:
2012-7-6 16:25
那是在等待键盘录入,可以输入一些内容后回车再看一下效果
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2