![](https://img-blog.csdnimg.cn/20201014180756923.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
多线程
风中~少年
以梦为马 不负韶华
展开
-
手写AQS
package com.example.demo.demo.lock;import sun.misc.Unsafe;import java.io.Serializable;import java.lang.reflect.Field;import java.util.concurrent.locks.AbstractOwnableSynchronizer;import java.ut...原创 2020-04-06 16:09:47 · 257 阅读 · 0 评论 -
java 多线程实现方式
package com.example.demo.demo.ThreadDemo;import java.util.ArrayList;import java.util.List;import java.util.concurrent.*;/** * @description: 线程demo 测试 * 并发三要素: 原子性 可见性 有序性 * 出现线程安全的原因: * 线程切...原创 2020-04-01 22:11:12 · 145 阅读 · 0 评论 -
java 内存泄漏
链接:Java中的内存泄露转载 2020-04-01 12:29:50 · 188 阅读 · 0 评论 -
HashMap 容量为什么是2的整数幂
前几天面试问道HashMap实现原理,我巴拉巴拉一通说。然后面试官问我扩容时为什么要左移1位。我沉思了很久,没回答上来。时候查阅资料总结下:为了能让 HashMap 存取高效,尽量较少碰撞,也就是要尽量把数据分配均匀。我们上面也讲到了过了,Hash 值的范围值-2147483648到2147483647,前后加起来大概40亿的映射空间,只要哈希函数映射得比较均匀松散,一般应用是很难出现碰撞的。...原创 2020-03-31 11:35:05 · 576 阅读 · 0 评论 -
生产者/消费者多种实现方法
1:使用wait/notify(notifyall)package com.example.demo.demo.ThreadDemo;import java.util.ArrayList;import java.util.List;import java.util.Random;import java.util.concurrent.ExecutorService;import ...原创 2020-03-30 23:27:12 · 158 阅读 · 0 评论