多线程包含:
锁:synchronized
并发:在同一实体上的多个事件,是在一台处理器上“同时”处理多个任务,同一时刻,其实是只有一个事件在发生。
并行:在不同实体上的多个事件,是在多台处理器上同时处理多个任务,同一时刻,大家真的都在做事情,各做各的。
进程:简单的说,在系统中运行一个应用程序就是一个进程,每一个进程都有它自己的内存空间和系统资源。
线程:也被称为轻量级进程,在同一个进程内会有一个或多个线程,也是大多数操作系统进行时序调度的基本单元。、
管程:Monitor(监视器),也就是我们平时所说的锁,其实是一种同步机制,他的义务是保证(同一时间)只有一个线程可以访问被保护的的数据和代码。
JVM中同步时基于进出和退出监视器对象(Monitor,管程对象)来实现的,每个对象实例都会有一个Monitor对象。
Monitor对象会和Java对象一同创建并销毁,它底层是由C++语言来实现的。
一个对象被synchronized修饰,JIT编译器会告诉jvm,生成对象的同时生成monitor