Scu*_*eve 4 java multithreading
所以我正在为学校编写一个简单的服务器 - 客户端程序.客户端发送命令和一些参数,服务器返回一个答案.
服务器将侦听新连接,并为每个新客户端连接创建一个线程.服务器侦听器也是由main启动的独立线程.
服务器端Main等待用户输入,并在收到适当的输入时退出.
就目前而言,服务器侦听器在一个循环中运行
while(true)
{
...
}
Run Code Online (Sandbox Code Playgroud)
因此,当main到达程序的末尾然后退出时,它会杀死所有正在运行的线程吗?或者它会等待他们完成运行?
如果是后一种情况,我可以调用某种方法,如果系统试图退出,它将返回true吗?
请记住,每个组件都是它自己的类的一部分.
NPE*_*NPE 10
有两种类型的线程:守护进程和用户.主线程始终是用户线程.
只要存在至少一个用户线程,该进程就会保持活动状态.当所有用户线程终止时,所有守护程序线程都将被终止,并且进程终止.
要设置线程的守护程序状态,可以setDaemon()在启动线程之前调用.
因此,当main到达程序的末尾然后退出时,它会杀死所有正在运行的线程吗?或者它会等待他们完成运行?
如果它是一个守护程序线程,它最终会被杀死.如果它是用户线程,只要线程继续运行,该进程就会保持活动状态.
| 归档时间: |
|
| 查看次数: |
253 次 |
| 最近记录: |