如题
解决方案 »
- 关于jdk包中的java文件中的Exception类的构造函数问题???
- java实现aes算法,(解密)01
- ObjectInputStream如何传输byte数组呢?
- 很简单的一段代码也编译不通过,郁闷?
- java 阻塞式socket+多任务处理
- 《Thinking in java》一书课後的习题解答哪里找?
- 问一个初学问题:怎样运行一个*.java程序?请指教。
- 怎样用java来实现文件下载?
- 培养一个人的举一翻三能力,给一个程序看看你们是否那个作其他的事情?
- 如何取得一个字符串在另一个字符串中的数目,有没有JAVA函数
- 如何使用POI提取WORD文档中的内容?
- 谁有《算法设计技巧与分析》沙特 这本书的习题答案
public static void main(String[] args) {
Thread tread = new Thread() {
public void run() {
try {
while (true) {
System.out.println("thread alive.");
sleep(1000);
}
} catch (Throwable e) {
e.printStackTrace();
}
}
};
thread.start();
System.out.println("main end");
return; //如果是指System.eixt(0);,那就没办法了
}
}
首先主线程在java里有没有这个概念也是个问题,system.exit是不是等于主线程退出呢?
守护线程例外,会随程序主动结束。
LZ可以用g搜一下“守护线程”
Java的Main所在的线程启动一个新的线程以后,两个线程的优先级应该一样。
如果调用System.exit()的话,不是结束Main线程,而是结束了整个Java进程。
也就是说,你在run一个Java application的时候,这个时候系统会开一个进程
然后这个进程启动了Main线程。
Java进程确定虚拟机中没有线程运行的时候,退出进程。
或者也可以用System.exit(0);强制退出进程。注意:Main线程和Main中启动的线程都是依赖于Java虚拟机进程的。