background image

这个程序什么也没有,就是做 5 次 Selector.open(),然后休息 30 秒,以便我使用
Process Explorer 工具来查看进程。程序编译没有问题,运行起来,在 Process 
Explorer 中看到下面的对话框:(

居然有 10 个连接,从连接端口我们可以知道,互相

 

连接, 如:第一个连第二个,第二个又连第一个

 

 

 
 
不由得赞叹我们的 Java 啊,先不说这是不是一件愚蠢的事。至少可以肯定的是,Java 在
消耗宝贵的系统资源方面,已经可以赶的上某些蠕虫病毒了。
 
如果不信,不妨把上面程序中的那个 MAXSIZE 的值改成 65535 试试,不一会你就会发
现你的程序有这样的错误了:(在我的 XP 机器上大约运行到 2000 个 Selector.open() 
左右)
 

Exception in thread "main" java.lang.RuntimeException: java.io.IOException: 

Unable to establish loopback connection

        at Test.main(Test.java:18)
Caused by: java.io.IOException: 

Unable to establish loopback connection

        at sun.nio.ch.PipeImpl$Initializer.run(Unknown Source)
        at java.security.AccessController.doPrivileged(Native Method)