Java并发编程
文章平均质量分 69
黄洁旺
这个作者很懒,什么都没留下…
展开
-
容器与并发容器
HashMap hashmap:1.7的一个存储结构是,entry数组,加链表。 put:是通过计算出一个hash值,然后在通过这个hash值取模运算得到一个,下标值,这个时候相同的key或者不同的key计算出来的,下标是有可能相同的,当相同的时候,就出现了hash碰撞,在下标的下面衍生一个链表去存储。 get:是通过key值计算出一个,hash值,在通hash值取模得到一个下标值,去获取元素。 resize:扩容有两个条件,所占空间大于等于阈值百分之七十五并且当前添加的数据时entry头不为空也就是原创 2020-12-11 22:33:39 · 112 阅读 · 0 评论 -
ReentrantLock基本使用与原理
ReentrantLock基本使用 package com.study.lock; import java.util.concurrent.TimeUnit; import java.util.concurrent.locks.Lock; import java.util.concurrent.locks.ReentrantLock; public class Demo1_GetLock { //公平锁 //static Lock lock = new ReentrantLock(t原创 2020-12-01 22:25:27 · 328 阅读 · 0 评论 -
多线程基础与synchronized原理
Java运行原理分析 聊多线程不得不聊Java是如何运行的,怎么运行又牵扯到了JVM这个东西,我们先分析一下,jvm的内存结构图与作用看我这篇文章了解一下就行 https://blog.csdn.net/weixin_44329272/article/details/104229151 多线程的状态 六种状态,三种变化 线程状态,六种:新建,运行,等待,超时等待,阻塞,终止 一般三种变化情况, 1.新建–>运行–>终止 2.新建–>运行–>等待/超时等待–>运行–>终原创 2020-11-23 23:16:10 · 76 阅读 · 0 评论 -
多线程之实现一个线程池
import java.util.ArrayList; import java.util.Collections; import java.util.List; import java.util.concurrent.BlockingQueue; import java.util.concurrent.LinkedBlockingQueue; public class FixedSizeThr...原创 2020-01-31 22:27:01 · 139 阅读 · 0 评论