java中一个线程的run方法只能执行一次,守护线程所能执行的操作与非守护线程没有本质的区别,也不一定要全程运行,也有可能一个守护线程只是在特定情况下才start,并且很快执行完run方法,然后被销毁。守护线程与非守护线程的区别在于是否将线程的setDaemon()方法设置为true;
当一个系统进程中所有非守护线程都结束,只有守护线程时,jvm将会关闭,这个java程序就完全结束了
当然不会一直重复执行run方法了.
守护线程跟一般线程唯一不太一样的地方是,守护线程在其他线程执行完之后,即使守护线程未执行完,他也会停止执行.