当前位置: 技术问答>java相关
如何在一个线程中启动另外一个线程,然后本线程就退出?
来源: 互联网 发布时间:2015-08-15
本文导语: 我在一个子线程里面new了一个线程继承类,然后start(),本来期望调用的线程应该结束,但是这个线程好像停了一样,即使子线程已经结束了这个线程还是存在。 环境:linux[在linux下线程的表现还是子进程] 以下是代码...
我在一个子线程里面new了一个线程继承类,然后start(),本来期望调用的线程应该结束,但是这个线程好像停了一样,即使子线程已经结束了这个线程还是存在。
环境:linux[在linux下线程的表现还是子进程]
以下是代码概况。本来期望mysun在start了sunsun线程以后自己就应该消失了,但实际情况是mysun所属的子进程永远都不会消失,除非System.exit.
class father{
public static void main(String[] args){
father f1 = new father();
f1.dothread();
System.exit(0);
}
public father(){
}
public dothread(){
new mysun().start();
}
private class mysun extends Thread{
public mysun(){}
public void run(){
sunsun s1 = new sunsun();
s1.start();
}
}
private class sunsun extends Thread{
...do something
}
}
环境:linux[在linux下线程的表现还是子进程]
以下是代码概况。本来期望mysun在start了sunsun线程以后自己就应该消失了,但实际情况是mysun所属的子进程永远都不会消失,除非System.exit.
class father{
public static void main(String[] args){
father f1 = new father();
f1.dothread();
System.exit(0);
}
public father(){
}
public dothread(){
new mysun().start();
}
private class mysun extends Thread{
public mysun(){}
public void run(){
sunsun s1 = new sunsun();
s1.start();
}
}
private class sunsun extends Thread{
...do something
}
}
|
用stop吧,应该可以中止线程的.
|
你可以得到父进程的PID,然后把它杀死。