- 博客(3)
- 收藏
- 关注
原创 ThreadLocal原理及内存泄漏分析
多线程访问同一个共享变量的时候回有并发问题,解决办法之一就是每个线程都访问本线程自己的变量来避免线程不安全问题。这个线程本地变量就是TreadLocal来实现的。引用和对象的关系???ThreadLocal的实现原理 引用和对象的关系??? 在再开始分析ThreadLocal之前,我们先回顾一下Java中的引用,只有理解了引用,才可以深入理解TheadLocal的实现原理。 下面这段代码中的第一行,obj就是对象的引用,而new Object() 将会在堆内存中产生了一个对象,obj这个引用指向了堆内存
2020-08-04 14:51:21 342
转载 java实现十大经典算法
1、二分查找算法(非递归) /** * @desc 二分查询(非递归方式) * 案例: * {1,3,8,10,11,67,100},编程实现二分查找,要求使用非递归方式完成。 */ public class BinarySearchNonRecursive { public static void main(String[] args) { int[] arr = {1, 3, 8, 10, 11, 67, 100}; int index = binaryS
2020-06-10 15:52:19 944
转载 Intellij IDEA 智能补全的 10 个姿势,简直不能太牛逼!
首先来看一下下面这张图,在方法里面有效位置后面输入一个.,最后面会列表所有可用的自动补全的关键字,这也就是今天要分享的内容。 1、快速打印输出 除了用 sout 开头快速生成,还能在后面快速生成。name.out 2、快速定义局部变量 在字符串或者数字……后面输入 .var,回车,IDEA会自动推断并快速定义一个局部变量,不过它是 final 类型的。 3、快速定义成员变量 在值后面输入.field,可以快速定义一个成员变量,如果当前方法是静态的,那生成的变量也是静态的。 4、快速格式化字符串 在字
2020-06-03 15:21:30 294
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人