随笔分类 -  JAVA

摘要:1、强引用(默认使用) //强引用 public class StrongReferenceDemo { public static void main(String[] args) { Object obj1 = new Object();//这样定义的,默认就是强引用 Object obj2 = 阅读全文
posted @ 2021-03-18 10:09 DHaiLin 阅读(82) 评论(0) 推荐(0) 编辑
摘要:int corePoolSize:线程池中常驻的核心线程数; int maximumPoolSize:线程池中能够容纳同时执行的最大线程数,此值必须大于等于1; long keepAliveTime:多余的空闲线程的存活时间,当前线程池数量超过corePoolSize的时候, 当空闲时间达到keep 阅读全文
posted @ 2021-03-11 16:53 DHaiLin 阅读(120) 评论(0) 推荐(0) 编辑
摘要:2、线程池的使用方式 常见三种方式(重要) Executors.newFixedThreadPool(int);//创建一个线程池,该线程池重用固定数量的从共享无界队列中运行的线程。 Executors.newSingleThreadExecutor();//创建一个使用从无界队列运行的单个工作线程 阅读全文
posted @ 2021-03-11 11:37 DHaiLin 阅读(113) 评论(0) 推荐(0) 编辑
摘要:import java.util.concurrent.Callable; import java.util.concurrent.FutureTask; class MyThread3 implements Callable<Integer>{ @Override public Integer c 阅读全文
posted @ 2021-03-10 16:58 DHaiLin 阅读(106) 评论(0) 推荐(0) 编辑
摘要:1、原始构成 synchronized是关键字,属于JVM层面; monitorenter(底层是通过monitor对象完成,其实wait / notify等方法也依赖 monitor对象,只有在同步块或方法中才能调用wait / notify等方法); monitorexit Lock是具体的类( 阅读全文
posted @ 2021-03-10 09:33 DHaiLin 阅读(277) 评论(0) 推荐(0) 编辑
摘要:ArrayBlockingQueue:由数组结构组成的有界阻塞队列; LinkedBlockingQueue:由链表结构组成的有界阻塞队列(但大小默认值为:Integer.MAX_VALUE); PriorityBlockingQueue:支持优先级排序的无界阻塞队列; DelayQueue:使用优 阅读全文
posted @ 2021-03-10 09:03 DHaiLin 阅读(1251) 评论(0) 推荐(0) 编辑
摘要:枚举类 @Getter public enum CountryEnum { ONE(1, "燕"), TWO(2,"赵"), THREE(3,"韩"), FOUR(4,"魏"), FIVE(5,"齐"), SIX(6,"楚"); private Integer code; private Strin 阅读全文
posted @ 2021-03-05 10:56 DHaiLin 阅读(84) 评论(0) 推荐(0) 编辑
摘要:1、公平锁和非公平锁 公平锁:是指多个线程按照申请锁的顺序来获取锁,类似于排队打饭,先来后到; 非公平锁:是指多个线程获取锁的顺序并不是按照申请锁的顺序,有可能后申请的线程比先申请的线程优先获取锁,在高并发的情况下,有可能或造成优先级反转或者饥饿的情况; 公平/非公平 在并发包ReentrantLo 阅读全文
posted @ 2021-03-04 17:37 DHaiLin 阅读(54) 评论(0) 推荐(0) 编辑
摘要:1、ArrayList /** * 集合类不安全问题 * 1、故障现象: * java.util.ConcurrentModificationException(并发修改异常) * 2、解决方案 * 3.1、new Vector<>(); * 3.2、Collections.synchronized 阅读全文
posted @ 2021-02-26 16:27 DHaiLin 阅读(87) 评论(0) 推荐(0) 编辑
摘要:1、CAS: > compareAndSet(期望值,修改值) 比较并交换; /** * CAS: > compareAndSet() * 比较并交换 */ public class CASDemo { public static void main(String[] args) { AtomicI 阅读全文
posted @ 2021-02-26 13:58 DHaiLin 阅读(103) 评论(0) 推荐(0) 编辑
摘要:JUC: 指java中java.util.concurrent包;(concurrent:并发) JUC分类: java.util.concurrent java.util.concurrent.atomic(atomic:原子性) java.util.concurrent.locks(locks: 阅读全文
posted @ 2021-02-25 18:01 DHaiLin 阅读(90) 评论(0) 推荐(0) 编辑
摘要:1、redis持久化 Redis提供了两种不同的持久化方式: RDB(Redis DataBase): 在指定的时间间隔内将内存中的数据集快照写入磁盘,恢复时将快照文件读到内存里; 备份是如何执行的: Redis会单独创建一个子进程(fork)来进行持久化,会先将数据写入到一个临时文件中,待持久化过 阅读全文
posted @ 2021-02-24 16:45 DHaiLin 阅读(99) 评论(0) 推荐(0) 编辑
摘要:1、自增 public class ZiZeng { public static void main(String[] args) { int i = 1; i = i++;//运行此行后,此时i=1 int j = i++; int k = i + ++i * i++; System.out.pr 阅读全文
posted @ 2021-02-23 17:43 DHaiLin 阅读(139) 评论(0) 推荐(0) 编辑

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