2016 - 2024

感恩一路有你

jvm最大线程数 Java用户线程和守护线程有什么区别?

浏览量:2322 时间:2021-03-13 22:40:44 作者:admin

Java用户线程和守护线程有什么区别?

Java中有两种类型的线程:用户线程和守护进程线程。守护进程的功能是为其他线程的操作提供方便的服务。例如,垃圾收集线程是一个称职的守护者。用户和守护进程之间几乎没有区别。唯一的区别在于虚拟机的离开:如果所有用户线程都已退出,并且只有守护进程线程存在,那么虚拟机将退出。因为没有守护程序,所以守护程序没有工作,也不需要继续运行程序。值得一提的是,保护线程不仅在虚拟机内部提供,用户在编写程序时还可以自行设置保护线程。

jvm什么时候退出?

1. 人工呼叫系统出口2当主螺纹完成,只剩下保护螺纹时。JVM退出。

main线程结束,子线程为什么没有退出?

如果程序中有守护程序和非守护程序,则JVM虚拟机会将在所有非守护程序中结束它将自动结束,并且虚拟机将退出。finally块能否被执行取决于运气

程序中的非保护线程是主线程。主线程启动守护线程,然后退出

最后,取决于是否有足够的CPU时间打印t

运行时Java虚拟机实例的职责是运行Java程序。

1.1. JVM实例的诞生

当一个程序启动时,一个JVM实例诞生。当程序关闭并退出时,JVM实例将死亡。如果多个程序在同一台机器上运行,将生成相应数量的JVM实例,并且每个程序都有一个相应的JVM实例来运行。任何具有public、static、void函数并接受字符串数组参数(string[]args)的类都可以用作JVM实例的起点。

1.2. JVM实例的运行

main()是程序初始线程的起点,其他线程都由该线程启动。JVM中有两种线程:保护线程和非保护线程。Main()是一个非保护线程,通常由JVM本身使用。Java程序还可以指示它们创建的线程是保护线程。java程序的初始线程就是运行main()的线程,这是一个非保护线程。只要任何非保护线程仍在运行,JVM就会继续存在。

1.3. JVM实例死亡

当程序中所有非守护进程终止时,JVM退出。如果安全管理器允许,程序也可以使用它java.lang.Runtime运行时类或java.lang.System系统. exit()退出。

jvm最大线程数 tomcat线程和jvm线程区别 查看jvm线程情况

版权声明:本文内容由互联网用户自发贡献,本站不承担相关法律责任.如有侵权/违法内容,本站将立刻删除。