![](https://img-blog.csdnimg.cn/20201014180756916.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
Java基础
文章平均质量分 61
huchao_lingo
这个作者很懒,什么都没留下…
展开
-
Mac M1 jdk11 DNS错误
Mac M1芯片电脑, 项目升级到jdk11启动报错原创 2022-12-01 11:13:43 · 3547 阅读 · 1 评论 -
工具类 Apache Commons 与 hutool
工具类 Apache Commons 与 hutool原创 2022-11-30 14:35:05 · 1184 阅读 · 0 评论 -
ThreadLocal详解
ThreadLocal详解下面引用ThreadLocal的API注释:This class provides thread-local variables. These variables differ from their normal counterparts in that each thread that accesses one (via its get or set method) has its own, independently initialized copy of th.原创 2021-06-21 11:18:12 · 1053 阅读 · 0 评论 -
InheritableThreadLocal详解
InheritableThreadLocal详解打开InheritableThreadLocal类的源码,InheritableThreadLocal继承自ThreadLocal,重写了三个方法:childValue,getMap,createMappublic class InheritableThreadLocal<T> extends ThreadLocal<T> { /** * Computes the child's initial val...原创 2021-06-21 11:16:03 · 963 阅读 · 0 评论 -
TransmittableThreadLocal(TTL)
???? 功能???? 在使用线程池等会池化复用线程的执行组件情况下,提供ThreadLocal值的传递功能,解决异步执行时上下文传递的问题。一个Java标准库本应为框架/中间件设施开发提供的标配能力,本库功能聚焦 & 0依赖,支持Java 17/16/15/14/13/12/11/10/9/8/7/6。JDK的InheritableThreadLocal类可以完成父线程到子线程的值传递。但对于使用线程池等会池化复用线程的执行组件的情况,线程由线程池创建好,并且线程是池化起来反复使用的;这时父转载 2021-06-16 20:46:52 · 1134 阅读 · 0 评论 -
内存分析工具MAT的使用
内存分析工具MAT的使用MAT下载地址http://www.eclipse.org/mat/downloads.php我使用的是mac,这里选择Mac OSX版本下载启动MAT导入dump文件导入一个1.58G的dump文件报错"Java heap space"解决方式:编辑文件MemoryAnalyzer.ini修改最大堆内存为4G,-Xmx4g重新启动MAT,导入dump文件打开Leak Suspects视图,分析内存使用情况可以看到(a) Problem Susp原创 2021-06-09 20:22:49 · 909 阅读 · 1 评论 -
elasticsearch服务器CPU100%分析
elasticsearch服务器CPU100%分析1、通过top命令查询占用CPU高的进程ID2、查询是哪些线程占用比较高top -Hp 28354H代表显示线程信息p用来指定进程id发现线程31342、28478等占用比较多的CPU资源3、将十进制pid转换为十六进制的pidprintf “0x%x” 284784、查询具体的线程信息jstack -l 2835...原创 2020-03-12 15:44:55 · 6797 阅读 · 0 评论 -
JAVA常见内存溢出模拟
JAVA常见内存溢出模拟1、堆溢出import java.util.ArrayList;import java.util.List;/** * 堆溢出 * -Xms20m -Xmx20m -XX:+HeapDumpOnOutOfMemoryError * java.lang.OutOfMemoryError: Java heap space * Created by double...原创 2020-03-11 14:31:21 · 1536 阅读 · 0 评论 -
死锁模拟(JAVA)
死锁模拟(JAVA)/** * Created by double on 2019/7/29. */public class DeadLockDemo { private final Object lock1 = new Object(); private final Object lock2 = new Object(); void method1() { ...原创 2020-03-11 14:12:16 · 1058 阅读 · 0 评论 -
单例模式的几种实现方式(JAVA)
单例模式的几种实现方式(JAVA)概括起来,要实现一个单例,我们需要关注的点无外乎下面几个:构造函数需要是 private 访问权限的,这样才能避免外部通过 new 创建实例;考虑对象创建时的线程安全问题;考虑是否支持延迟加载;考虑 getInstance() 性能是否高(是否加锁)。1、饿汉式饿汉式的实现方式比较简单。在类加载的时候,instance 静态实例就已经创建并初始化好...原创 2020-03-11 11:28:40 · 1387 阅读 · 0 评论 -
java实现整形数字反转
java实现整形数字反转/** * 整形数字反转 * Created by double on 2019/9/3. */public class NumberReverse { public static void main(String[] args) { int num = 123123412; long reversedNum = 0; ...原创 2020-03-11 10:30:04 · 1210 阅读 · 0 评论