我正在尝试创建一些本地聊天软件。 一切都很好,但只是坚持一点; 当用户点击按钮时,我的程序会卡住。
我写了一个修改过的类,它同时适用于服务器和客户端。
以下是我的代码:
here
waiting for Message : SERVER
here
waiting for Message : CLIENT
当服务器和客户端连接时,我可以看到这个输出:
a on console.
但是当我点击发送按钮时,我的程序就会卡住。 点击按钮后,我可以看到:
C:\\Users\\Ofek\\Desktop\\Folder\\source.txt
答案 0 :(得分:0)
这个词是'块'。它阻止了I / O.它会阻止。
不要对事件线程执行阻塞操作。所有网络代码都应该在不同的线程上运行。这包括readObject()
和writeObject(),
以及flush(),
并创建流。