基础概念复习¶
1 把锁:synchronized
2 个并:并发、并行
3 个程:进程、线程、管程
并发和并行¶
并发:
-
是在同一实体上的多个事件
-
是在一台处理器上“同时”处理多个任务
-
同一时刻,其实是只有一个事件在发生
并行:
-
是在不同实体上的多个事件
-
是在多台处理器上同时处理多个任务
-
同一时刻,大家真的都在做事情,你做你的,我做我的
管程¶
Monitor(监视器),也就是平时说的锁
Monitor其实是一种同步机制,他的义务是保证〈同一时间)只有一个线程可以访问被保护的数据和代码。
JVM中同步是基于进入和退出监视器对象(Monitor,管程对象)来实现的,每个对象实例都会有一个Monitor对象
object= new object();
new Thread(o ->{
synchronized (o){
},“t1").start();
Monitor对象会和IJava对象一同创建并销毁,它底层是由C++语言来实现的。
参考资料:JVM 第 3 版