![](https://img-blog.csdnimg.cn/20201014180756928.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
并发系列
渐入佳境o
这个作者很懒,什么都没留下…
展开
-
Java的对象头和对象组成详解
转载于https://blog.csdn.net/lkforce/article/details/81128115?utm_medium=distribute.pc_relevant.none-task-blog-BlogCommendFromMachineLearnPai2-4.channel_param&depth_1-utm_source=distribute.pc_relevant.none-task-blog-BlogCommendFromMachineLearnPai2-4.chann.转载 2020-07-30 16:44:48 · 99 阅读 · 0 评论 -
java自旋锁的实现及其分析
自旋锁是指一个线程尝试获取某个锁是,如果该锁已经被其他线程占用了,就一直循环检测锁释放被释放,而不是像互斥锁一样让线程进入挂起或者睡眠状态。 自旋锁的的缺点就是会一直死循环一直到获取锁为止,这样会一直消耗cpu内存,但是与互斥锁把线程阻塞,然后再次被唤醒相比在性能方面还是有优势的,因为频繁的从用户态切到内核态,需要消耗系统资源,性能也更惨,但是目前的jvm对synchronized实现做了修改采用...原创 2020-03-22 12:03:35 · 620 阅读 · 0 评论 -
线程的几种状态及其经典的生产者-消费者模型
五种状态: 创建初始化状态 创建一个线程类,new一个实例出来,线程就进入初始化状态 就绪(Runnable):只缺CPU 可运行状态只说明有资格运行,CPU调度程序没挑中你,就只能在可运行状态 调用线程start()方法,进入线程Runnable 当前线程sleep方法结束,或者其他线程join结束,或者某个线程拿到对象锁,这些均可使线程进入可运行状态 当前线程时间片用完了,调用当前线...原创 2020-03-17 13:40:51 · 142 阅读 · 0 评论