Skip to content

基础概念复习

1 把锁:synchronized

2 个并:并发、并行

3 个程:进程、线程、管程

并发和并行

并发:

  • 是在同一实体上的多个事件

  • 是在一台处理器上“同时”处理多个任务

  • 同一时刻,其实是只有一个事件在发生

并行:

  • 是在不同实体上的多个事件

  • 是在多台处理器上同时处理多个任务

  • 同一时刻,大家真的都在做事情,你做你的,我做我的

管程

Monitor(监视器),也就是平时说的锁

Monitor其实是一种同步机制,他的义务是保证〈同一时间)只有一个线程可以访问被保护的数据和代码。

JVM中同步是基于进入和退出监视器对象(Monitor,管程对象)来实现的,每个对象实例都会有一个Monitor对象

object= new object();
new Thread(o ->{
    synchronized (o){
},t1").start();

Monitor对象会和IJava对象一同创建并销毁,它底层是由C++语言来实现的。

参考资料:JVM 第 3 版