多线程-线程概述等

来源:互联网 发布:电脑主机 知乎 编辑:程序博客网 时间:2024/06/06 09:23
package cn.itcast_01;/* *进程: *正在运行的程序,是系统进行资源分配和调用的独立单位。 *每一个进程都有它自己的内存空间和系统资源。 *线程: *是进程中的单个顺序控制流,是一条执行路径 *一个进程如果只有一条执行路径,则称为单线程程序。 *一个进程如果有多条执行路径,则称为多线程程序。 * *  举例: *  扫雷程序,迅雷下载 *   *  大家注意两个词汇的区别:并行和并发。 *并行:是逻辑上同时发生,指在某一个时间内同时运行多个程序。 *并发:是物理上同时发生,指在某一个时间点同时运行多个程序。 * *  Java程序的运行原理: * 由java命令启动JVM,JVM启动就相当于启动了一个进程。 * 接着有该进程创建了一个主线程去调用main方法。 *  *  思考题: * jvm虚拟机的启动是单线程的还是多线程的? * 多线程的。 * 原因是垃圾回收线程也要先启动,否则很容易会出现内存溢出。 * 现在的垃圾回收线程加上前面的主线程,最低启动了两个线程,所以,jvm的启动其实是多线程的。 */public class MyThreadDemo {public static void main(String[] args) {System.out.println("hello");new Object();new Object();new Object();new Object();//...一直new,没有内存溢出,因为启动了垃圾回收线程System.out.println("world");}}