java 虚拟机的生命周期
来源:互联网 发布:淘宝自动评价加分吗 编辑:程序博客网 时间:2024/05/23 11:49
一个运行时的Java虚拟机实例的天职是:负责运行一个java程序。当启动一个Java程序时,一个虚拟机实例也就诞生了。当该程序关闭退出,这个虚拟机实例也就随之消亡。如果同一台计算机上同时运行三个Java程序,将得到三个Java虚拟机实例。每个Java程序都运行于它自己的Java虚拟机实例中。
Java虚拟机实例通过调用某个初始类的main()方法来运行一个Java程序。而这个main()方法必须是共有的(public)、静态的(static)、返回值为void,并且接受一个字符串数组作为参数。任何拥有这样一个main()方法的类都可以作为Java程序运行的起点。
public class Test { public static void main(String[] args) { // TODO Auto-generated method stub System.out.println("Hello World"); }}
在上面的例子中,Java程序初始类中的main()方法,将作为该程序初始线程的起点,任何其他的线程都是由这个初始线程启动的。
在Java虚拟机内部有两种线程:守护线程和非守护线程。守护线程通常是由虚拟机自己使用的,比如执行垃圾收集任务的线程。但是,Java程序也可以把它创建的任何线程标记为守护线程。而Java程序中的初始线程——就是开始于main()的那个,是非守护线程。
只要还有任何非守护线程在运行,那么这个Java程序也在继续运行。当该程序中所有的非守护线程都终止时,虚拟机实例将自动退出。假若安全管理器允许,程序本身也能够通过调用Runtime类或者System类的exit()方法来退出。
转载自:JAVA虚拟机的生命周期
参考:一个java虚拟机只能支持一个进程吗?看到网上说用processbuilder启动子进程的话会生成一个新的java虚拟机来运行这个进程,这样貌似很浪费资源,有没有可能在同一个java虚拟机上运行多个进程呢?
- JAVA虚拟机的生命周期
- JAVA虚拟机的生命周期
- JAVA虚拟机的生命周期
- JAVA虚拟机的生命周期
- java 虚拟机的生命周期
- JAVA虚拟机的生命周期
- JAVA虚拟机的生命周期
- JAVA虚拟机的生命周期
- JAVA虚拟机的生命周期
- JAVA虚拟机的生命周期
- JAVA虚拟机的生命周期
- java虚拟机的生命周期
- java虚拟机的生命周期
- JAVA虚拟机的生命周期
- java虚拟机类型的生命周期
- Java虚拟机之类的生命周期
- (转)JAVA虚拟机的生命周期
- Java虚拟机学习-java的生命周期
- Swift基础篇——枚举
- Swift基础篇——内存相关
- Swift基础篇——内外函数
- Swift基础篇——析构方法
- [POJ 1511]Invitation Cards[链式前向星][SPFA]
- java 虚拟机的生命周期
- Swift2.0——构造方法的使用
- Josephus问题解决方法一
- Swift中的打印日志的配置
- 关于大学考试的一点看法
- Swift 读取本地json文件时的异常捕获(try catch)的使用
- 垃圾收集 Garbage Collection
- PHP 页面抓取技术
- 关闭 RichTextBox 中 AutoWordSelection 的自动选词功能