线程池异常统一处理
摘要:①直接catch 第一种思路很简单,就是把业务逻辑都trycatch起来。 ②自定义线程池 自定义线程池,继承ThreadPoolExecutor并复写其afterExecute(Runnable r, Throwable t)方法。 //java.util.concurrent.ThreadPoo
阅读全文
posted @
2024-06-19 11:23
zhengbiyu
阅读(34)
推荐(0) 编辑
线程池-workQueue
摘要:线程池参数的 workQueue 决定了缓存任务的排队策略,对于不同的业务场景,我们可以使用不同的排队策略。 我们只需要实现BlockingQueue 这个接口即可。 介绍一下常用的有三种workQueue。 1. SynchronousQueue SynchronousQueue没有容量,是无缓冲
阅读全文
posted @
2024-01-28 12:16
zhengbiyu
阅读(255)
推荐(0) 编辑
线程状态
摘要:Java 线程状态 (6 种) Java线程的生命周期分为:NEW(初始化状态)、RUNNABLE(可运行状态/运行状态)、BLOCKED(阻塞状态)、WAITING(等待状态)、TIMED_WAITING(有时限的等待)、TERMINATED(终止状态)。 可以看下源码中线程State的枚举类:
阅读全文
posted @
2023-03-30 00:44
zhengbiyu
阅读(4)
推荐(0) 编辑
线程池
摘要:线程池的生命周期,总共有五种状态 RUNNING :能接受新提交的任务,并且也能处理任务队列中的任务; SHUTDOWN:关闭状态,不再接受新提交的任务,但却可以继续处理阻塞队列中已保存的任务。在线程池处于 RUNNING 状态时,调用 shutdown()方法会使线程池进入到该状态。(finali
阅读全文
posted @
2023-03-29 23:16
zhengbiyu
阅读(17)
推荐(0) 编辑