摘要: 1.JVM垃圾回收的时候如何确定垃圾?是否知道什么是GC Roots "/" 什么是垃圾 简单来说就是内存中已经不在被使用到的空间就是垃圾 要进行垃圾回收,如何判断一个对象是否可以被回收? 引用计数法 枚举根节点做可达性分析 为了解决引用计数法的循环引用问题,Java 使用了可达性算法。 跟踪收集器 阅读全文
posted @ 2021-02-27 17:51 Hugo_nice 阅读(103) 评论(0) 推荐(0)
摘要: 一.JUC多线程及并发包 1.10.死锁编码及定位分析 是什么 ​ 产生死锁的主要原因 系统资源不足 进程运行推进的顺序不合适 资源分配不当 代码解释: package com.ybzn._01.juc; import java.util.concurrent.TimeUnit; class Hol 阅读全文
posted @ 2021-02-27 17:49 Hugo_nice 阅读(56) 评论(0) 推荐(0)
摘要: 一.JUC多线程及并发包 1.6.CountDownLatch/CyclicBarrier/Semaphore使用过吗? CountDownLatch ​ 让一些线程阻塞直到另外一些完成后才被唤醒 CountDownLatch主要有两个方法, ​ 当一个或多个线程调用await方法时,调用线程会被阻 阅读全文
posted @ 2021-02-27 17:47 Hugo_nice 阅读(79) 评论(0) 推荐(0)
摘要: 一.JUC多线程及并发包 1.8.线程池用过吗?ThreadPoolExecutor谈谈你的理解? 为什么使用线程池? 线程池作的工作主要: 控制运行线程的数量 处理过程中将任务加入队列,在线程创建后,直接启动这些任务 如果创建超过了最大数量,超出的数量将进入队列排队登录,等其他线程执行完毕以后,再 阅读全文
posted @ 2021-02-27 17:47 Hugo_nice 阅读(62) 评论(0) 推荐(0)
摘要: 一.JUC多线程及并发包 1.9.线程池用过吗?生产上你是如何设置合理参数 线程池的拒绝策略 等待队列也已经排满了,再也塞不下新的任务了同时,线程池的max也到达了,无法接续为新任务服务这时我们需要拒绝策略机制合理的处理这个问题. JDK内置拒绝策略 ​ AbortPolicy(默认): 直接抛出R 阅读全文
posted @ 2021-02-27 17:47 Hugo_nice 阅读(64) 评论(0) 推荐(0)
摘要: 一.JUC多线程及并发包 1.5.公平锁/非公平锁/可重入锁/递归锁/自旋锁谈谈你的理解?请手写一个自旋锁 公平锁和非公平锁 公平锁 是指多个线程按照申请锁的顺序来获取锁类似排队打饭 先来后到 非公平锁 是指在多线程获取锁的顺序并不是按照申请锁的顺序,有可能后申请的线程比先申请的线程优先获取到锁,在 阅读全文
posted @ 2021-02-27 17:46 Hugo_nice 阅读(61) 评论(0) 推荐(0)