1. ServerSocket.accept
2. Socket.InputStream
以上是两个阻塞方法,监听客户端的连接请求和输入流
当用CTRL+C结束程序时,如果执行Socket.close的动作(特别是在ShutDownHook线程中执行),监听中的方法肯定报错。
解决此问题的方法是: 执行完毕必要的结束处理动作,不要执行关闭动作,则不会报错
让系统自动清理占用的端口资源
--------------- 程序退出时的错误 不影响功能,但对完美主义者来说是不可接受的