我们经常见到类似的jstack信息

"main" #1 prio=5 os_prio=31 tid=0x00007fa63900c800 nid=0x1703 waiting on condition [0x0000700000219000]

java.lang.Thread.State: TIMED_WAITING (sleeping)

at java.lang.Thread.sleep(Native Method)

at Test.main(Test.java:5)

nid=0x1703 nid我们都知道是其实就是进程id。

那tid呢,tid=0x00007fa63900c800 还这么大的一个数字

有人说这个就是java自己的线程id啊,Thread.getId()啊

然后我就测试了下,

public static void main(String[] args) throws Exception {

System.out.println("-------------"+Thread.currentThread().getId());

结果是-------------1

多创建几个线程看看,线程id是9啊,10啊,规律就是从1开始一直递增的。

和tid=0x00007fa63900c800 这么大的数字完全对不上啊。

同事给我一个提示,这是不是个内存地址啊。

好像是哦,正好是16个16进制,转成2进制就是16*4=64位,内存地址也是64位。

然后就是使用hsdb工具来查看了:

image.png

image.png

确实是个内存地址,但是不是线程栈开始的位置,而是比较靠后的位置。

这个位置具体是什么意思就后面有机会再看了。

java线程中的tid_jstack中的tid到底是什么意思呢相关推荐

  1. 基于Java线程池读取数据库中数据(学习+运用)

    基于Java线程池读取数据库中数据(学习+运用) 以下是学习内容 Main.java import java.util.concurrent.ArrayBlockingQueue; import ja ...

  2. java 线程类 通信_Java 中利用管道实现线程间的通讯

    在Java 语言中,提供了各种各样的输入输出流(stream),使我们能够很方便的对数据进行操作,其中,管道(pipe)流是一种特殊的流,用于在不同线程(threads)间直接传送数据.一个线程发送数 ...

  3. java 线程的join_多线程中join()

    这个鬼东西百度了好久没弄明白,大佬们代码一粘贴好了完事,借助官方api终于是理解了,当然如果有问题欢迎大家用键盘来羞辱我. 首先  join有什么用?   他是用来确定线程何时结束的 , Thread ...

  4. java 线程执行结束_java中怎么判断线程执行完毕

    java中怎么判断线程执行完毕 发布时间:2020-05-15 15:18:05 来源:亿速云 阅读:316 作者:Leah java中怎么判断线程执行完毕?针对这个问题,今天小编总结这篇有关线程判断 ...

  5. java线程安全的list_Java中的集合和线程安全

    通过Java指南我们知道Java集合框架(Collection Framework)如何为并发服务,我们应该如何在单线程和多线程中使用集合(Collection). 话题有点高端,我们不是很好理解.所 ...

  6. java线程不能重复_Java中多线程重复启动

    标签: 在面试时候经常被问到多线程的相关问题: 今天在测试的时候发现下面的代码会抛出异常: java.lang.IllegalThreadStateException public static vo ...

  7. Java线程怎样映射到操作系统线程

    先说多线程模型,参考经典教材<Operating System Concepts , Silberschatz ,9th edition> 中文版是<操作系统概念,第9版> h ...

  8. java线程堆栈信息分析

    线程堆栈也称作线程调用堆栈.Java线程堆栈是虚拟机中线程(包括锁)状态的一个瞬间快照,即系统在某个时刻所有线程的运行状态,包括每一个线程的调用堆栈,锁的持有情况等信息.对于已经消失而又没留有痕迹的信 ...

  9. java runnable wait_面试官:都说阻塞 I/O 模型将会使线程休眠,为什么 Java 线程状态却是 RUNNABLE?...

    摘要: 原创出处 https://studyidea.cn 「公众号:程序通事 」欢迎关注和转载,保留摘要,谢谢! 使用 Java 阻塞 I/O 模型读取数据,将会导致线程阻塞,线程将会进入休眠,从而 ...

最新文章

  1. c语言格式化写入文件大小,利用C语言格式化读写文件
  2. Xcode7在运行包含HTTP协议的程序时报错解决方法 App Transport Security has blocked a cleartext HTTP (http)...
  3. Java内存溢出[转]和mysql配置文件简介[原创]
  4. VTK:图表之ShortestPath
  5. 关于页面布局的一些注意点
  6. android java split_Java中的split函数的用法
  7. PHP并发IO编程实践
  8. 登录显示未找到服务器,未找到服务器
  9. 蓝桥杯 ADV-21 算法提高 多项式输出
  10. 兼容最好的设为首页加入收藏代码
  11. PPT(office365)之背景图片、矢量图标、颜色搭配使用心得
  12. 物联网应用网站——用户手册
  13. 测试英语口语软件,‎App Store 上的“英语口语8000句 - 最新英语口语听力查词软件”...
  14. Parallel使用
  15. 多文件自平衡云传输(二)资源接收 断点续传篇 —————— 开开开山怪
  16. MBA书籍推荐:打造商业思维,看这一本书就够了
  17. MySQL 第六章
  18. 复旦校长官宣:复旦大学即将推出“不升也能留”计划!
  19. MIME Types MIME 类型
  20. 人在四合院:我变成了何雨柱(二)

热门文章

  1. 网页中HTML代码如何实现字体删除线效果
  2. 流量分析(wireshark使用)
  3. Windows 10 “无法打开这个应用” 应用出现问题,应该怎么解决?
  4. 财务分析之利润表、现金流量表
  5. prism在java_Prism 框架应用-基础知识篇
  6. 【MySQL基础】MySQL介绍及安装
  7. 【汇正财经】什么是金融股?
  8. 解决Win10系统激活office2019时出现 0xc004f074 无法激活问题,亲测可用!!!
  9. 顶点计划2-2调研报告
  10. mysql中约束由数字构成_MySQL 数据类型和约束(外键是重点)