-
2.你说你做过JVM调优和参数配置,请问如何盘点查看JVM系统默认值
大纲JVM的参数类型标配参数X参数(了解)XX参数Boolean类型Case是否打印GC收集细节-XX:-PrintGCDetails-XX:+PrintGCDetails是否使用串行垃圾回收器KV设值类型jinfo案例,如何查看当前运行程序的配置Case1Case2Case3题外话(坑题)盘点家底…
-
1.JVM垃圾回收的时候如何确定垃圾?是否知道什么是GC Roots
JVM+GC题目大纲1.JVM垃圾回收的时候如何确定垃圾?是否知道什么是GC Roots什么是垃圾要进行垃圾回收,如何判断一个对象是否可以被回收引用计数法枚举根节点做可达性分析(根搜索路径)caseJava中可以作为GC Roots的对象…
-
JVM+GC解析(学习大纲,前提复习:JVM内存结构,GC的作用域,常见的垃圾回收算法)
大纲前提复习JVM内存结构JVM体系结构Java8以后的JVMGC的作用区域常见的垃圾回收算法【没有完美的算法,都有自己的特定场景】引用计数复制(用于新生代)标记清除(用于老生带)标记整理(用于老生带)…
-
8.线程池用过吗?ThreadPoolExecutor谈谈你的理解
线程池用过吗?ThreadPoolExecutor谈谈你的理解?为什么用线程池,优势线程池如何使用架构说明编码实现了解重点Executors.newFixedThreadPool(int nThreads);Executors.newSingleThreadExecutor();Executors.…
-
7.阻塞队列知道吗
阻塞队列知道吗队列+阻塞队列为什么用?有什么好处?BlockingQueue的核心方法架构梳理+种类分析架构介绍(idea右键show diagram可以看到)种类分析SynchrounousQueue:不存储元素的阻塞队列,也即单个元素的队列理论SynchronousQueueDemo用在哪里sy…
-
6、CountDownLatch、CyclicBarrier、Semaphore使用过吗
CountDownLatch、CyclicBarrier、Semaphore使用过吗CountDownLatch代码示例CyclicBarrier代码示例Semaphore代码示例彩蛋1.程序开发,先完成(基本功能),再完美(迭代)2.程序员两种1)功能2)功能+性能3.Java枚举可以看成一个小型…
-
5.公平锁,非公平锁,可重入锁,递归锁,自旋锁谈谈你的理解?请手写一个自旋锁
公平锁,非公平锁,可重入锁,递归锁,自旋锁谈谈你的理解?请手写一个自旋锁公平锁和非公平锁是什么两者区别题外话可重入锁(又名递归锁)是什么ReentrantLock/Synchronized就是一个典型的可重入锁ReenterLockDemo参考1参考2自旋锁生活case:我在打电话,一个同事问我问题…
-
4.我们知道ArrayList是线程不安全,请编码写一个不安全的案例并给出解决方案
我们知道ArrayList是线程不安全,请编码写一个不安全的案例并给出解决方案写时复制彩蛋1.撸源码,查看ArrayList new的过程,add的过程(包含扩容),本质是一个数组2.工作经验:有自己的故障收集手册牛逼程序员(写正确代码,正确代码前提:写了无数的故障代码,并不断总结)3.优秀Java…
-
3.原子类AtomicInteger的ABA问题谈谈?原子更新引用知道吗?
原子类AtomicInteger的ABA问题谈谈?原子更新引用知道吗?连环问题提问原子引用彩蛋1.美团,蚂蚁花呗面试题2.乐观锁与ABA问题的 原子引用+版本号3.多多研究JUC包下的源码,对做难事很有帮助…
-
2.CAS你知道吗
CAS你知道吗大纲是什么CAS底层原理CAS缺点彩蛋1.cas类比git,svn等的版本号(冲突产生)2.学习三境界api调用工程师-会用原理-知道为何源码-总结3.截图工具HyperSnap-DX4.Java学习方法论目标-思路-代码代码-理论-总结5.synchronized与cas比较并发性(…