随笔分类 -  JAVA

摘要:在java中结合线程池,返回Callable返回任务使用 public static void main(String[] args) throws ExecutionException, InterruptedException { ExecutorService executorService 阅读全文
posted @ 2025-02-08 15:04 余生请多指教ANT 阅读(5) 评论(0) 推荐(0) 编辑
摘要:三者内部都是维护一个字节数组, String abc=new String(); String采用的16进制编码, 里面的字节数组是final 修饰的,不允许在原来的基础上修改,所以会生成一个新的字节数组 private final byte[] value; 底层调用 System.arrayco 阅读全文
posted @ 2025-01-06 17:34 余生请多指教ANT 阅读(7) 评论(0) 推荐(0) 编辑
摘要:这两个集合都支持写复制,在并发性方面比,ArrayList,LinkList要好一些。 适用场景:读多邪少的情况 看下源码为甚么读多写少的情况下比较好 第一步: CopyOnWriteArraySet copyOnWriteArraySet=new CopyOnWriteArraySet<>(); 阅读全文
posted @ 2025-01-02 19:41 余生请多指教ANT 阅读(4) 评论(0) 推荐(0) 编辑
摘要:static List<String> arrayList = new ArrayList(); static { for (int i = 0; i < 10000; i++) { arrayList.add("编号:" + i); } } //会出现多线线程处理同一个元素 for (int i 阅读全文
posted @ 2024-12-30 10:26 余生请多指教ANT 阅读(3) 评论(0) 推荐(0) 编辑
摘要:对 HashMap 的好处 提高查找效率 当哈希冲突比较严重时,链表会变得很长。在一个长链表中查找元素,时间复杂度会退化为(是链表长度)。而红黑树是一种自平衡二叉查找树,其查找、插入和删除操作的时间复杂度在最坏情况下依然能保持为。 将链表转换为红黑树后,能有效降低在哈希冲突较多的桶中查找元素的时间成 阅读全文
posted @ 2024-12-26 17:37 余生请多指教ANT 阅读(41) 评论(0) 推荐(0) 编辑
摘要:package com.wb.demo.util; import java.lang.ref.PhantomReference; import java.lang.ref.Reference; import java.lang.ref.ReferenceQueue; import java.util 阅读全文
posted @ 2024-12-26 11:59 余生请多指教ANT 阅读(1) 评论(0) 推荐(0) 编辑
摘要:当被应用的强引用失去后,强引用关联的这个引用也就是虚引用相关的分配就会被回收 以ThreadLocal<T>为例 1.进行塞值 public void set(T value) { Thread t = Thread.currentThread(); ThreadLocalMap map = get 阅读全文
posted @ 2024-12-26 10:32 余生请多指教ANT 阅读(8) 评论(0) 推荐(0) 编辑
摘要:定义 软引用(Soft Reference)是 Java 中引用类型的一种。它是一种相对较弱的引用,在 Java 的垃圾回收机制(Garbage Collection,GC)中具有特殊的处理方式。 用途 软引用主要用于缓存场景,当内存空间足够时,垃圾回收器不会回收软引用所指向的对象;只有当内存不足时 阅读全文
posted @ 2024-12-25 17:33 余生请多指教ANT 阅读(6) 评论(0) 推荐(0) 编辑
摘要:ThreadLocal底层是个map每次set值的时候把当前线程与值放到里面 ThreadLocal.ThreadLocalMap threadLocals = null; 这种结构在大数据量并发请求时会,会产生内存泄漏。 请求时set进去,正常退出move掉,来不及remove的数据会停留在内存中 阅读全文
posted @ 2024-12-25 16:37 余生请多指教ANT 阅读(4) 评论(0) 推荐(0) 编辑
摘要://每一次创建一个对象都是强引用()也就是普通的引用 Object object = new Object(); public class TTT { //实际情况不需要重写,也不必要重写,java有垃圾回收器帮助回收C,C++需要回收。 @Override protected void final 阅读全文
posted @ 2024-12-25 11:16 余生请多指教ANT 阅读(7) 评论(0) 推荐(0) 编辑
摘要: 阅读全文
posted @ 2023-01-14 22:11 余生请多指教ANT 阅读(19) 评论(0) 推荐(0) 编辑
摘要:package com.wangbiao.security; public class Boy { public void getBoy(){ System.out.println("上帝是个宝贝"); } public static Object getBoyObject(){ return ne 阅读全文
posted @ 2022-06-19 18:29 余生请多指教ANT 阅读(40) 评论(0) 推荐(0) 编辑
摘要:at java.text.SimpleDateFormat.subParse(SimpleDateFormat.java:1869) 1896处使用了NumberFormat与DateFormate产生联系使用。but确实作为一个全局变量去使用,于是内部属性也作为全局使用,多线程竞争产生了问题 优化 阅读全文
posted @ 2022-05-18 22:54 余生请多指教ANT 阅读(58) 评论(0) 推荐(0) 编辑
摘要:转载:https://www.cnblogs.com/little-fly/p/7907935.html 我偷懒了不想写,至于为什么会有hash碰撞,请自行了解异或算法,或者看hahMap源码 阅读全文
posted @ 2022-04-07 14:23 余生请多指教ANT 阅读(20) 评论(0) 推荐(0) 编辑
摘要:java -jar zkui.jar server -Xms32M Xmx32 & 阅读全文
posted @ 2022-01-17 22:26 余生请多指教ANT 阅读(85) 评论(0) 推荐(0) 编辑
摘要:导出: package com.example.demo.excel.demo0; import com.alibaba.excel.annotation.ExcelProperty; import com.alibaba.excel.annotation.format.NumberFormat; 阅读全文
posted @ 2021-08-29 17:51 余生请多指教ANT 阅读(70) 评论(0) 推荐(0) 编辑
摘要:package util.bloomfilter; import lombok.var; /** *@Topic:同步线程 * * * * * 11111 * 它表示用Counter.lock实例作为锁,两个线程在执行各自的synchronized(Counter.lock) { ... }代码块时 阅读全文
posted @ 2021-08-28 16:01 余生请多指教ANT 阅读(34) 评论(0) 推荐(0) 编辑
摘要:LocalDateTime等新出的日期类全是final修饰的类,不能被继承,且对应的日期变量都是final修饰的,也就是不可变类。赋值一次后就不可变,不存在多线程数据问题。 simpleDateFormat.parse() simpleDateFormat.format() 注意calendar.s 阅读全文
posted @ 2021-08-27 14:03 余生请多指教ANT 阅读(120) 评论(0) 推荐(0) 编辑
摘要://无返回值 CompletableFuture completableFuture0=CompletableFuture.runAsync(()); //无返回值执行器 CompletableFuture completableFuture0_0=CompletableFuture.runAsyn 阅读全文
posted @ 2021-07-22 22:26 余生请多指教ANT 阅读(239) 评论(0) 推荐(0) 编辑

点击右上角即可分享
微信分享提示