![](https://img-blog.csdnimg.cn/20190918140158853.png?x-oss-process=image/resize,m_fixed,h_224,w_224)
面试
文章平均质量分 72
小心仔
这个作者很懒,什么都没留下…
展开
-
JVM + GC 学习笔记
JVM+GCJDK8JVM内存结构GC作用域常见垃圾回收算法GC Roots ?JVM 参数JDK8JVM内存结构GC作用域常见垃圾回收算法引用计数(不常用)复制标记清除标记整理GC Roots ?JVM 确定垃圾,根节点判断JVM 参数基本参数JVM 参数 标配参数 -version -help X参数 xx参数 booleen参数 -XX + 是 - 否 -XX:+ PrintGCDetails 打印GC日志 key 参数原创 2021-11-06 20:52:30 · 139 阅读 · 0 评论 -
线程池原理
线程池线程池Callable 接口线程池及优势线程池7大参数工作原理线程池4大拒绝策略线程池Callable 接口extend Threadimplements Runnableimplements Callable 抛异常、有返回值package com.xin;import java.util.concurrent.Callable;import java.util.concurrent.ExecutionException;import java.util.concurrent.原创 2021-11-06 16:51:13 · 86 阅读 · 0 评论 -
Lock 和 synchronized区别,Lock有什么好处
这里写目录标题Lock 和 synchronized1、原始构成2、使用方法3、等待是否可以中断4、加锁是否公平5、锁绑定多个条件ConditionLock好处举例?Lock 和 synchronized1、原始构成synchronized,是关键字属于JVM层面 monitorenter (底层通过monitor对象来完成,其中wait、notify也依赖monitor对象,只有在同步块和方法才能调用wait、notify) monitorexitLock 是具体类(java.util.co原创 2021-11-06 11:29:50 · 132 阅读 · 0 评论 -
阻塞队列 BlockingQueue、同步 SynchronousQueue
解释一种队列,它还支持在检索元素时等待队列变为非空,在存储元素时等待队列中的空间变为可用的操作。BlockingQueue方法有四种形式,有不同的处理操作的方法,这些操作不能立即满足,但在将来的某个时候可能会满足:一种抛出异常,另一种返回特殊值(null或false,取决于操作),第三个线程无限期地阻塞当前线程,直到操作成功,第四个线程在放弃之前只阻塞给定的最大时间限制。下表总结了这些方法:核心方法为神魔用,好处抛异常例子...原创 2021-11-06 10:23:47 · 241 阅读 · 0 评论 -
JUC多线程及高并发-CountDownLatch、CyclicBarrier、Semaphore
JUC多线程及高并发-计时器CountDownLatch(计数)CountDownLatch 例子CyclicBarrierCyclicBarrier 例子Semaphore (计数信号灯)Semaphore 例子CountDownLatch(计数)翻译一种同步辅助工具,允许一个或多个线程等待,直到在其他线程中执行的一组操作完成。CountDownLatch是用给定的计数初始化的。由于调用countDown()方法,await方法会一直阻塞,直到当前计数达到零,然后释放所有等待的线程,并立即返回原创 2021-11-05 20:18:18 · 134 阅读 · 0 评论 -
Java 锁
Java 锁一、Java 锁1.1、公平锁和非公平锁1.2、可重入锁(递归锁)原理1.3、自旋锁(spinlock)1.3、读写锁一、Java 锁1.1、公平锁和非公平锁解释公平锁解释:多线程情况下,按照申请锁的顺序进行获取锁,先来先得。非公平锁解释:多线程情况下,获取锁的顺序不是按照申请锁顺序来的。高并发情况下,可能会导致优先级反转或者饥饿现象。两者区别公平锁是并发环境下,每个线程获取锁,查看等待队列,如果为空,或线程是等待队列的第一个,则占有锁,否则加入等待队列,按照先进先出规则队原创 2021-11-04 20:29:53 · 114 阅读 · 0 评论 -
集合类不安全 - 并发修改异常、写时复制
集合类不安全-并发修改异常、写时复制原创 2021-11-04 13:46:28 · 90 阅读 · 0 评论 -
JUC多线程及高并发-Volatile
volatile 是什么?Java 虚拟机提供的轻量级同步机制保证可见性、 不保证原子性、禁止指令重排原创 2021-11-03 21:11:20 · 131 阅读 · 0 评论 -
JUC多线程及高并发-CAS-ABA
JUC多线程及高并发-CASCAS是什么atomicInteger.compareAndSetUnsafeCAS是什么CAS的全称为Compare-And-Swap,它是一条CPU并发原语。它的功能是判断内存某个位置的值是否为预期值,如果是则更改为新的值,这个过程是原子的。CAS并发原语体现在JAVA语言中就是sun.misc.Unsafe类中的各个方法。调用UnSafe 类中的CAS方法,JVM会 帮我们实现出CAS汇编指令。这是一种完全依赖于硬件的功能,通过它实现了原子操作。再次强调,由于CAS原创 2021-11-03 21:10:25 · 134 阅读 · 0 评论 -
面试总结+
1、IO用过吗?项目中哪里用到了?1)、逆向工程获取配置文件 InputStream 读取xml文件//指定 逆向工程配置文件InputStream in = GeneratorSqlMapTest.class.getClassLoader(). getResourceAsStream("mybatis-generator-config.xml");2)、读取Fil...原创 2020-03-07 14:38:31 · 1021 阅读 · 1 评论