进程和线程的区别
一个进程中可以有多个线程,多个线程共享进程中的堆和方法区(jdk1.8后的元空间)资源。但是每一个线程都有自己的程序计算器、虚拟机栈和本地方法栈。
线程是进程划分出来的更小的运行单位,一个进程在其执行过程中可能会产生多个线程。
线程和进程最大的区别在于基本上各个进程是独立的,而各线程则不一定,因为同一个进程中的各个线程有可能会相互影响。
线程的执行开销小,但不利于资源的管理和利用,而进程的执行开销大,但是有利于资源的管理和应用。
参考:JavaGuide面试突击版
一个进程中可以有多个线程,多个线程共享进程中的堆和方法区(jdk1.8后的元空间)资源。但是每一个线程都有自己的程序计算器、虚拟机栈和本地方法栈。
线程是进程划分出来的更小的运行单位,一个进程在其执行过程中可能会产生多个线程。
线程和进程最大的区别在于基本上各个进程是独立的,而各线程则不一定,因为同一个进程中的各个线程有可能会相互影响。
线程的执行开销小,但不利于资源的管理和利用,而进程的执行开销大,但是有利于资源的管理和应用。
参考:JavaGuide面试突击版