载Oreilly Java Thread 2nd Version一书中,deamon结束应该意味着java虚拟机将要退出。而java虚拟机在一个用户线程结束后,才去检查系统的其它线程是不是deamon,如果只有deamon,虚拟机会退出。所以你期望的顺序应该是虚拟机的自然顺序。供参考和讨论。