这究竟是不是JDK推荐线程关闭方式,为何你还在乱用?
- 内容介绍
- 文章标签
- 相关推荐
本文共计3076个文字,预计阅读时间需要13分钟。
JDK在线程的Stop方法时,明确不得强行销毁一个线程,应优雅地退出线程。何谓优雅退出线程,即在业务进行中请求正确处理,取消待执行请求,回收资源,最终通过Thread的runnable方法执行退出。
JDK在线程的Stop方法时明确不得强行销毁一个线程,要优雅的退出线程。
何谓优雅退出线程,即业务将进行中请求正确被处理,取消待执行请求,执行资源回收,最终Thread Runable run 方法return 结束执行。
首先问为什么要退出一个线程,再提问如何退出一个线程
需要线程退出的常见场景
- 任务执行完成,或异常终止,任务认为无需再占用线程。
- 线程池根据当前任务执行情况,伸缩线程池。当任务执行较少时,退出空闲的线程。
- 服务或进程在关闭阶段,例如滚动发布时,需要退出线程、关闭线程池、关闭进程。
- 定时任务、周期任务需要终止执行时,需要退出当前线程。或者退出当前任务的执行。
总之既然能创建一个线程,就会有退出一个线程的能力。也会有退出线程的场景。
关闭一个线程的方式分为两种类型:通知线程主动关闭和强行关闭销毁线程。
本文共计3076个文字,预计阅读时间需要13分钟。
JDK在线程的Stop方法时,明确不得强行销毁一个线程,应优雅地退出线程。何谓优雅退出线程,即在业务进行中请求正确处理,取消待执行请求,回收资源,最终通过Thread的runnable方法执行退出。
JDK在线程的Stop方法时明确不得强行销毁一个线程,要优雅的退出线程。
何谓优雅退出线程,即业务将进行中请求正确被处理,取消待执行请求,执行资源回收,最终Thread Runable run 方法return 结束执行。
首先问为什么要退出一个线程,再提问如何退出一个线程
需要线程退出的常见场景
- 任务执行完成,或异常终止,任务认为无需再占用线程。
- 线程池根据当前任务执行情况,伸缩线程池。当任务执行较少时,退出空闲的线程。
- 服务或进程在关闭阶段,例如滚动发布时,需要退出线程、关闭线程池、关闭进程。
- 定时任务、周期任务需要终止执行时,需要退出当前线程。或者退出当前任务的执行。
总之既然能创建一个线程,就会有退出一个线程的能力。也会有退出线程的场景。
关闭一个线程的方式分为两种类型:通知线程主动关闭和强行关闭销毁线程。

