上一页 1 2 3 4 5 6 7 8 ··· 10 下一页
摘要: https://www.jianshu.com/p/99772ad092d3 标记-清除算法: 标记-清除算法采用从根集合进行扫描,对存活的对象进行标记,标记完毕后,再扫描整个空间中未被标记的对象,进行回收。标记-清除算法不需要进行对象的移动,并且仅对不存活的对象进行处理,在存活对象比较多的情况下极 阅读全文
posted @ 2019-10-11 21:12 要好好吃饭 阅读(142) 评论(0) 推荐(0) 编辑
摘要: Eden-伊甸园 STW-Stop the World 一、java代码编译执行过程 源码编译:通过Java源码编译器将Java代码编译成JVM字节码(.class文件) 类加载:通过ClassLoader及其子类来完成JVM的类加载 类执行:字节码被装入内存,进入JVM虚拟机,被解释器解释执行 j 阅读全文
posted @ 2019-10-11 13:04 要好好吃饭 阅读(115) 评论(0) 推荐(0) 编辑
摘要: 1、什么是死锁? 死锁是指两个或者两个以上的进程在执行过程中,因争夺资源而造成的一种相互等待的现象,若无外力干涉,那它们就无法推进下去,如果系统资源充足,进程的资源请求都能够得到满足,死锁出现的可能性就很底,否则就会因为争夺有限资源而陷入死锁。 2、死锁模型图 3、死锁产生的四个条件: 互斥:共享资 阅读全文
posted @ 2019-10-01 21:19 要好好吃饭 阅读(128) 评论(0) 推荐(0) 编辑
摘要: 线程切换 CPU给线程分配时间片(也就是分配给线程的时间),执行完时间片后会切换到另一个线程。 切换之前会保存线程的状态,下次时间片再给这个线程时才能知道当前状态。 从保存线程A的状态再到切换到线程B时,重新加载线程B的状态的这个过程就叫上下文切换。 而上下切换时会消耗大量的CPU时间。 CPU运行 阅读全文
posted @ 2019-09-29 18:59 要好好吃饭 阅读(838) 评论(0) 推荐(0) 编辑
摘要: 1. 拒绝策略是什么? 等待队列已经排满了,再也塞不下新任务,同时线程池中线程也已经达到maximumPoolSize数量,无法继续为新任务服务,这个时候就需要使用拒绝策略来处理。 2. 线程池四种拒绝策略简介 AbortPolicy(默认) 直接抛出RejectedExecutionExcepti 阅读全文
posted @ 2019-09-24 21:30 要好好吃饭 阅读(166) 评论(0) 推荐(0) 编辑
摘要: 一个都不用。 JDK Executors提供了FixedThreadPool、SingleThreadPool、CachedThreadPool为啥不用? 根据阿里巴巴开发手册: 实际开发中,都是自己自定义线程池。 阅读全文
posted @ 2019-09-22 21:10 要好好吃饭 阅读(163) 评论(0) 推荐(0) 编辑
摘要: 1、线程池底层原理架构图 2、线程池主要处理流程图 3、线程池主要处理流程解释(重要) 在创建了线程池后,等待提交过来的任务请求。 当调用execute()方法添加一个任务请求,线程池会做如下判断: 2.1 如果正在运行的线程数小于corePoolSize,那么马上会创建线程运行这个任务; 2.2 阅读全文
posted @ 2019-09-20 20:58 要好好吃饭 阅读(218) 评论(0) 推荐(0) 编辑
摘要: ExecutorService threadPool = Executors.newFixedThreadPool(5); public static ExecutorService newFixedThreadPool(int nThreads) { return new ThreadPoolEx 阅读全文
posted @ 2019-09-18 14:01 要好好吃饭 阅读(1067) 评论(0) 推荐(0) 编辑
摘要: Executor 读音[ɪɡˈzekjətə(r)]-一个贼可特Thread 读音[θred]-思略的 Executors.newFixedThreadPool(5) 一池固定线程 适合长期任务,性能好,执行无序 Executors.newSingleThreadExecutor() 一池一线程 一 阅读全文
posted @ 2019-09-17 13:20 要好好吃饭 阅读(479) 评论(0) 推荐(0) 编辑
摘要: 1、线程池的概念 线程池做的主要工作就是控制运行的线程数量,处理过程中将任务放入队列,然后在线程创建后启动这些任务,如果运行线程数量超出了最大线程数量,超出部分需要排队等候,等待其他线程执行完毕,然后线程再从队列中取出任务执行。 2、线程池的主要特点 线程复用; 控制最大并发数; 管理线程; 3、线 阅读全文
posted @ 2019-09-17 12:12 要好好吃饭 阅读(227) 评论(0) 推荐(0) 编辑
上一页 1 2 3 4 5 6 7 8 ··· 10 下一页