![](https://img-blog.csdnimg.cn/20201014180756928.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
多线程
像狗的猫
这个作者很懒,什么都没留下…
展开
-
synchronized关键字总结
1.相关知识准备 1.1Java对象内存布局 markword:用于存储对象滋生的运行数据,存储哈希码、GC分代年龄、锁类型标记、偏向锁线程ID、CAS锁指向线程LockRecord的指针等等,synchronized锁机制和这部分密切相关。 在运行期间,markword里存储的数据会随着锁标志位的变化而变化,以32位的JDK为例: 1.2CAS操作 CAS:Compare And Swap ,改变mark word中的线程id。 三个参数:目标地址1 参数值2 参数值3 比较参数2是否和目标地址1的原创 2020-07-30 20:31:20 · 112 阅读 · 0 评论 -
多线程基础知识(线程创建、生命周期、相关方法、优先级)
1.线程的定义与创建 1.1线程的定义 每一个任务称作一个线程, 它是程序执行的最小单位;线程又叫做轻量级进程,可以把一个进程的资源分配和执行调度分开;线程是CPU调度的最小基本单位,各个线程既可以共享进程资源,又可以独立调度;各个线程拥有自己的栈空间 1.2线程与进程的区别 1)线程是CPU调度的最小基本单位;进程是资源分配的最小单位 2)进程有独立的地址空间,一个进程崩溃后在保护模式下不会对其他进程产生影响;线程没有独立的地址空间,只是一个进程中的不同执行路径,有自己的堆栈和局部变量,一个线程死掉就等于原创 2020-07-19 17:14:49 · 212 阅读 · 0 评论