Java多线程
不会街健的bboy不是一个好程序员
这个作者很懒,什么都没留下…
展开
-
多线程容器之 ConcurrentHashMap
简介ConcurrentHashMap是Java中的一个线程安全且高效的HashMap实现。平时涉及高并发如果要用map结构,那第一时间想到的就是它。从以下几个方面,我们来了解ConcurrentHashMap1)ConcurrentHashMap在JDK8里结构2)ConcurrentHashMap的put方法、szie方法等3)ConcurrentHashMap的扩容4)HashM...原创 2020-02-28 02:32:24 · 492 阅读 · 0 评论 -
线程通信 与 Condition接口
线程通信生产者于消费者模型的实现线程通信的方式原创 2020-02-20 01:29:29 · 113 阅读 · 0 评论 -
Lock接口 与 实现子类ReentrantLock
浅谈Lock接口在实现线程同步时,大多情况下使用的是Synchronized关键字实现,但是Synchronized的锁太过封闭,获得锁和释放锁都是系统自动的。所以为了更灵活的操作,在JDK1.5版本之后,就诞生了Lock接口以及其实现类。lock接口也是对资源上锁的一种工具,它不同于Synchronized的隐式上锁与解锁,lock接口中的获取锁和释放锁,是需要手动去操作的所以我们们了解一...原创 2020-02-19 20:45:22 · 327 阅读 · 0 评论 -
并发编程特性,悲观锁与乐观锁
并发编程的三大特性:原子性,有序性,可见性Volatile悲观锁乐观锁ReentrantLock原创 2020-02-19 14:50:59 · 134 阅读 · 1 评论 -
乐观锁与悲观锁的对比
乐观锁与悲观锁的区别1.乐观锁与悲观锁是什么乐观锁:乐观锁表示当线程对数据进行操作时,认为不会有其他线程来修改数据,所以先不上锁,对数据操作之后,检查此时的数据是否和最开始线程进入时的数据一致,如果一致,那么就可以认为没有其他线程对数据进行修改,现在可以对数据进行更新;如果不一致,那么就再读数据,再操作再检查数据,直到可以更新数据为止。悲观锁:表示当前线程对数据操作时,认为一定会有其他线程去...原创 2020-02-19 14:50:44 · 393 阅读 · 0 评论 -
多线程-线程安全、synchronized 、锁的升级机制
什么是锁底层如何实现锁的获取如何锁是如何升级的Java对象头中的markword原创 2020-02-09 02:12:48 · 164 阅读 · 0 评论 -
多线程的基本概念
1. 初始(NEW):新创建了一个线程对象,但还没有调用start()方法。2. 运行(RUNNABLE):Java线程中将就绪(ready)和运行中(running)两种状态笼统的称为“运行”。线程对象创建后,其他线程(比如main线程)调用了该对象的start()方法。该状态的线程位于可运行线程池中,等待被线程调度选中,获取CPU的使用权,此时处于就绪状态(ready)。就绪状态的线程在获得CPU时间片后变为运行中状态(running)。3. 阻塞(BLOCKED):表示线程阻塞于锁。4. 等待原创 2020-02-08 01:36:45 · 105 阅读 · 0 评论