java并发多线程
2021/7/21 17:06:55
本文主要是介绍java并发多线程,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
一,并发多线程
1,为什么要多线程
2,线程生命状态,线程池
3,JMM线程模型
4,syn加锁
1,同步锁,
2,JVM内置锁,
3,可以加载静态代码快,加载方法,加载类上
4,加锁原理(Monitor)
(1)1.6之前 Linux-Mutex,互斥锁,重量级锁。性能低。线程上下文的切换
(2)1.6之后锁的优化升级,偏向锁,轻量级锁,重量级锁。
(3)怎么实现。在JAVA的数据结构中有对象头,实例数据,对饮填充位,
(4)偏向状态。0.1(后2位)锁状态标致,在对象头里面记录当前对象的锁的状态,根据标记为一步步升级,锁的升级不可逆。
(5)JAVA 并发包,lock,依赖状态同步器,AQS,可重入,公平,非公平(队列,先进先出)。可中断
(6)volatile 修饰属性
轻量级锁机制,可见性,有序性,但是不保证原子性
HashMap
1,7之前,并发场景出现链表环,死锁,数据丢失,数组+链表
容量=16
扩容因子:0.75
转红黑树:>8和数组的大小 大于等于64
泊松分布。
Redis底层就是hash表。
concurrentHashMap
线程安全,加锁过程,
扩容
红黑树:treeMap 基于红黑树做的
这篇关于java并发多线程的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2024-12-27JavaScript面试真题详解与解答
- 2024-12-27掌握JavaScript大厂面试真题:新手入门指南
- 2024-12-27JavaScript 大厂面试真题详解与解析
- 2024-12-26网络攻防资料入门教程
- 2024-12-26SQL注入资料详解:入门必读教程
- 2024-12-26初学者指南:数据库服务漏洞项目实战
- 2024-12-26网络安全项目实战:新手入门指南
- 2024-12-26网络攻防项目实战入门教程
- 2024-12-26信息安全项目实战:从入门到初步应用
- 2024-12-26SQL注入项目实战:初学者指南