计算机的处理速度高
进程:一个进程对应一个应用程序,例如在、Windows操作系统中启动word,就是启动了一个进程(现代计算机都是支持多进程的,在同一个操作系统中可以同时执行多个进程)
2.多进程作用:?
单进程计算机只能同时做一件事情,
对于单核计算机来讲,在同一时间,游戏进程和音乐进程是同时进行么?不是
因为计算机的CPU只能在某个时间点上做一件事,计算机在游戏进程和音乐进程之间频繁的切换执行,切换之快让人们以为它是在同时执行的。
计算机引入多进程的作用:不是提高执行速度而是提高CPU的使用率
进程和进程之间的内存是独立的:
线程:线程是一个进程中的执行场景,一个进程可以启动多个线程
多线程作用:
不是为了提高执行速度,而是为了提高应用程序的使用率
人们感觉多个线程在同时并发执行
线程和线程共享堆内存和方法区内存,栈是独立的,一个线程一个栈
Java程序的 运行原理
java命令会启动JVM,等于启动了一个应用程序,表示启动了一个进程,该进程会自动启动一个“主线程”,然后主线程去调用某类的“main”方法,所以main方法运行在主线程中,在此以前所有的程序都是单线程的。
public static void main(String[] args) {
m1();
}
public static void m1() {
m2();
}
public static void m2() {
m3();
}public static void m3() {
System.out.println("m3--");
}
以上程序只有一个线程,主线程,m1 m2 m3 main在同一个栈中,所以只有一个线程