练习用Socket 写一个聊天室的功能,在给服务端加上多线程时发生这个报错。找了好久才发现,端口被占用了
问题所在:
把端口放在循环里面,不能无限制的开启端口啊
但是当我把这行代码移到 while (true) 外面后
ServerSocket server = new ServerSocket(5000);
//阻塞,等待连接,成功连接后,创建与客户端通讯的
Socket对象实例
Socket client = server.accept();
电脑直接崩掉了,为啥呢?
我的accept(); 阻塞 ,放在了循环外,那么while(true)就一直循环开启线程,就崩了。
所以以上两种问题,都是我把语句位置放错了导致的,应该改成这样