随笔分类 -  多线程

Java多线程
摘要:SpringBoot使用多线程 一 概述 1 为什么使用多线程 在我们开发系统过程中,经常会处理一些好费时间的任务(如向数据库中插入上百万数据,将会导致系统阻塞),这个时候就会自然想到使用多线程。 当数据量大的时候,一个新的线程满足不了系统的要求,但是只有少量的请求可以直接new一个新线程,如下代码 阅读全文
posted @ 2022-08-23 17:12 程序员曾奈斯 阅读(1443) 评论(0) 推荐(0) 编辑
摘要:建议去B站先看下子路老师的视频 ReentrantLock源码 synchronized通过在对象头的markword进行操作从而实现互斥锁 ReentrantLock通过将线程加入AQS阻塞队列从而实现同步互斥锁 首先初始化一个ReentrantLock ReentrantLock lock = 阅读全文
posted @ 2020-09-27 16:47 程序员曾奈斯 阅读(154) 评论(0) 推荐(0) 编辑
摘要:对象在内存中的内存布局 用sychronized锁住对象后该对象的锁状态升级过程:new - 无锁态 - 偏向锁 - 轻量级锁/自旋锁/无锁 (CAS)- 重量级锁 - GC标记信息 线程的几个状态 NEW(新建状态) Runnable Ready(就绪状态,线程被放在等待队列中,等着被CPU执行) 阅读全文
posted @ 2020-09-12 21:54 程序员曾奈斯 阅读(379) 评论(0) 推荐(0) 编辑
摘要:"声明:转载自茶轴的青春的博客" 网上有很多关于Java内存模型的文章,在《深入理解Java虚拟机》和《Java并发编程的艺术》等书中也都有关于这个知识点的介绍。但是,很多人读完之后还是搞不清楚,甚至有的人说自己更懵了。本文,就来整体的介绍一下Java内存模型,目的很简单,让你读完本文以后,就知道到 阅读全文
posted @ 2020-04-25 16:30 程序员曾奈斯 阅读(251) 评论(0) 推荐(0) 编辑

点击右上角即可分享
微信分享提示