1、一把锁 (synchronized)

2、两个并(并发 并行)

并发是在同一实体上的多个事件,是在一台处理器上同时处理多个任务,同一时刻,其实是只有一个时间在发生

并行是在不同实体上的多个事件,是在多台处理器上同时处理多个任务,同一时刻,大家真的都在做事情,互不影响

3、三个程(进程 线程 管程)

进程

简单的说,在系统中运行中的一个应用程序就是一个进程,每一个进程都有它自己的内存空间和系统资源

线程

也被称为轻量级进程,在同一个进程内会有1个或多个线程,是大多数操作系统进行时序调度的基本单元

管程

Monitor对象,也就是我们平时说的锁。

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

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

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

 

执行线程就要求先成功持有管程,然后才能执行方法,最后当方法完成(无论是否正常完成)时释放管程。在方法执行期间,执行线程持有了管程,其他任何线程都无法再获取到同一个管程。

posted on 2024-06-02 10:26  不会java的菜鸟程序员  阅读(25)  评论(0)    收藏  举报