在我的主线程中,有一个while(listening)
循环,它在我的ServerSocket
对象上调用accept()
,然后启动一个新的客户端线程并将其添加到集合中,当接受到新客户端时。
我还有一个Admin线程,我想用它来发出命令,比如'exit'
,这将导致所有客户端线程被关闭,关闭自己,并关闭主线程,通过将listening变量设置为false。
然而,在while(listening)
循环中的accept()
调用会阻塞程序运行,似乎没有任何方法可以中断它,因此无法再次检查while条件,程序也无法退出!
有更好的方法吗?或者有什么方法可以中断这个阻塞的方法吗?