SF
java常见面试题
java常见面试题
注册登录
关注博客
注册登录
主页
关于
RSS
ThreadLocal与ForkJoin使用踩坑记录
crawler
2021-04-09
阅读 3 分钟
5.1k
由于项目框架原因,在谨慎考虑后使用了ThreadLocal存储了上下文。上线一段时间后,发现有些时候拿到的上下文并不是自己线程的上下文,最后定位到是因为使用了java8的并行流,并且在并行流里面拿了一次ThreadLocal的上下文值,分析了一波原因后,将并行流改为了串行流(或使用ThreadPoolExecutor),情况得以正常。
@Transactional事务生效问题
crawler
2019-03-08
阅读 2 分钟
7.6k
平时我们使用spring框架,不论是springmvcv还是springboot,springCloud,绝大多数情况我们都是在方法,或者直接在类上面加一个@Transactional,将事务交给spring替我们去管理,然后并没有具体分析一些情况,今天结合几个例子,结合源代码,使用伪代码解释一波。
ConcurrentHashMap浅析
crawler
2018-12-13
阅读 4 分钟
8.4k
上一篇文章我们详细分析了一遍hashMap的数据结构,但是我们知道,在多线程情况下。hashmap是不安全的,这是问什么呢?我们首先分析一下: 多线程在对HashMap进行put的时候,邹游一个时候,hashCode会超过负载因子(默认0.75),超过以后,HashMap内部就会对数组扩容,扩容的时候会调用resize().下面我们看一下resize()方...
hashMap源码分析以及原理
crawler
2018-12-13
阅读 9 分钟
6.3k
前言 hashMap在平时工作和面试中,常常使用到和问到,本文将从一下几个方面进行记录: 什么是哈希表 HashMap实现原理 为何HashMap的数组长度一定是2的次幂? 1. 什么是哈希表 在讨论哈希表之前,我们先大概了解下其他数据结构在新增,查找等基础操作执行性能 数组:采用一段连续的存储单元来存储数据。对于指定下...