我的编程空间,编程开发者的网络收藏夹
学习永远不晚

Java开源工具在linux上的跟踪方式有哪些

短信预约 -IT技能 免费直播动态提醒
省份

北京

  • 北京
  • 上海
  • 天津
  • 重庆
  • 河北
  • 山东
  • 辽宁
  • 黑龙江
  • 吉林
  • 甘肃
  • 青海
  • 河南
  • 江苏
  • 湖北
  • 湖南
  • 江西
  • 浙江
  • 广东
  • 云南
  • 福建
  • 海南
  • 山西
  • 四川
  • 陕西
  • 贵州
  • 安徽
  • 广西
  • 内蒙
  • 西藏
  • 新疆
  • 宁夏
  • 兵团
手机号立即预约

请填写图片验证码后获取短信验证码

看不清楚,换张图片

免费获取短信验证码

Java开源工具在linux上的跟踪方式有哪些

这篇文章主要为大家展示了“Java开源工具在linux上的跟踪方式有哪些”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“Java开源工具在linux上的跟踪方式有哪些”这篇文章吧。

在我们常用的Jstack, Jmap 用于分析java虚拟机的状态的工具,通过起另一个虚拟机通过运行sun.tools包下的java文件,去跟踪另一个虚拟机的状态。

如果让你设计一个跟踪另一个进程的方法,你也通常会考虑这几种常用的方式。

***种,就是通知被跟踪的进程,让进程执行相应的消息,同时对该消息做出反应。

第二种,就是通过内核的调用,直接能够访问进程的内存,堆栈情况,通过分析被跟踪的进程的内存结构,从而知道当前被跟踪的进程的状态。

***种方式

优势:

对调用者和被调用者只要达成简单的通讯协议,调用者无需知道被调用者的逻辑,结构,只需要简单的发送命令的方式,被调用者能够接受到命令,并且对该命令进行回应就可以。

缺点:

如果被调用者当时的状态本来就不正常,或者繁忙,没办法对该命令做出响应,那这个跟踪进程往往是在规定的等待时间里,无法返回正确的需要的信息。其次被调用者在分析的过程中,有可能需要暂停进程中的其他的线程,而对被跟踪的进程有一定的影响。

第二种方式

优势:

通过内核的支持,访问被跟踪的内存,并作出快照,后台分析,很少影响被跟踪的进程。

缺点:

这种方式需要对被跟踪程的内存分配和使用非常的了解,无法解耦,而本身系统内核调用也会出问题。

Java工具类中也是大致实现了这2中方式,工具中会先选择***种方式,如果发现***种方式不能成功,将会建议使用-F参数,也就是第二种方式。

我们先讲***种方式。

既然是需要向被跟踪进程发出命令,在linux中可以选择多种方式进行进程中通讯 共享内存,文件之类,其中创建socket的文件实现通讯是比较简单的方法。

下面是整个的流程图:

Java开源工具在linux上的跟踪方式有哪些

以上是“Java开源工具在linux上的跟踪方式有哪些”这篇文章的所有内容,感谢各位的阅读!相信大家都有了一定的了解,希望分享的内容对大家有所帮助,如果还想学习更多知识,欢迎关注编程网行业资讯频道!

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

Java开源工具在linux上的跟踪方式有哪些

下载Word文档到电脑,方便收藏和打印~

下载Word文档

猜你喜欢

Java开源工具在linux上的跟踪方式有哪些

这篇文章主要为大家展示了“Java开源工具在linux上的跟踪方式有哪些”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“Java开源工具在linux上的跟踪方式有哪些”这篇文章吧。在我们常用的Js
2023-06-17

有哪些开源的Java IDE 工具

本篇内容介绍了“有哪些开源的Java IDE 工具”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!BlueJBlueJ 为 Java 初学者提
2023-06-16

Java开源工具在linux上执行的线程是什么

本篇内容介绍了“Java开源工具在linux上执行的线程是什么”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!Attach Listener
2023-06-17

Linux常用的开源项目管理工具有哪些

这篇文章主要介绍“Linux常用的开源项目管理工具有哪些”,在日常操作中,相信很多人在Linux常用的开源项目管理工具有哪些问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”Linux常用的开源项目管理工具有哪些
2023-06-27

如何分析Java开源工具在linux上的信号处理

今天就跟大家聊聊有关如何分析Java开源工具在linux上的信号处理,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。当java虚拟机启动的时候,会启动很多内部的线程,这些线程主要在th
2023-06-17

适用于Linux的优秀开源缓存工具有哪些

本篇内容介绍了“适用于Linux的优秀开源缓存工具有哪些”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!什么是缓存或内容缓存?缓存(或内容缓存
2023-06-16

编程热搜

目录