文章分类 -  多线程

scheduleAtFixedRate 与 scheduleWithFixedDelay 的区别
摘要:总结: scheduleAtFixedRate ,是以上一个任务开始的时间计时,period时间过去后,检测上一个任务是否执行完毕,如果上一个任务执行完毕,则当前任务立即执行,如果上一个任务没有执行完毕,则需要等上一个任务执行完毕后立即执行。 scheduleWithFixedDelay,是以上一个 阅读全文

posted @ 2018-11-26 15:57 腾飞的鹰 阅读(162) 评论(0) 推荐(0)

Java 浅析 Thread.join()
摘要:本文分为三部分对 Thread.join() 进行分析: 1. join() 的示例和作用 2. join() 源码分析 3. 对网上其他分析 join() 的文章提出疑问 1. join() 的示例和作用 1.1 示例 上面代码展示了两个类:Parent(父线程类),Child(子线程类)。 在 阅读全文

posted @ 2018-05-31 15:08 腾飞的鹰 阅读(142) 评论(0) 推荐(0)

jstack命令详解
摘要:一、介绍 jstack是java虚拟机自带的一种堆栈跟踪工具。jstack用于打印出给定的java进程ID或core file或远程调试服务的Java堆栈信息,如果是在64位机器上,需要指定选项"-J-d64",Windows的jstack使用方式只支持以下的这种方式: 主要分为两个功能: a. 针 阅读全文

posted @ 2018-05-28 14:04 腾飞的鹰 阅读(1276) 评论(0) 推荐(0)

jstack日志深入理解
摘要:在分析线上问题时常使用到jstack <PID>命令将当时Java应用程序的线程堆栈dump出来。 面对jstack 日志,我们如何查看? 首先要清楚线程的状态 线程的状态有:new、runnable、running、waiting、timed_waiting、blocked、dead 线程状态变迁 阅读全文

posted @ 2018-05-28 11:03 腾飞的鹰 阅读(4783) 评论(0) 推荐(0)

Jstack线程状态BLOCKED/TIMED_WAITING/WAITING解释
摘要:一、线程5种状态 新建状态(New) 新创建了一个线程对象。 就绪状态(Runnable) 线程对象创建后,其他线程调用了该对象的start()方法。该状态的线程位于可运行线程池中,变得可运行,等待获取CPU的使用权。 运行状态(Running) 就绪状态的线程获取了CPU,执行程序代码。 阻塞状态 阅读全文

posted @ 2018-05-28 10:27 腾飞的鹰 阅读(4076) 评论(0) 推荐(0)

根据CPU核心数确定线程池并发线程数
摘要:目录 一、抛出问题 二、分析 三、实际应用 四、总结: 目录 一、抛出问题 二、分析 三、实际应用 四、总结: 一、抛出问题 关于如何计算并发线程数,一般分两派,来自两本书,且都是好书,到底哪个是对的?问题追踪后,整理如下: 第一派:《Java Concurrency in Practice》即《j 阅读全文

posted @ 2018-04-13 16:23 腾飞的鹰 阅读(268) 评论(0) 推荐(0)

java.lang.ThreadLocal类
摘要:深入研究java.lang.ThreadLocal类 一、概述 ThreadLocal是什么呢?其实ThreadLocal并非是一个线程的本地实现版本,它并不是一个Thread,而是threadlocalvariable(线程局部变量)。也许把它命名为ThreadLocalVar更加合适。线程局部变 阅读全文

posted @ 2018-04-03 14:29 腾飞的鹰 阅读(221) 评论(0) 推荐(0)

导航