千家信息网

JVM Log技术原理及用法是什么

发表于:2024-11-26 作者:千家信息网编辑
千家信息网最后更新 2024年11月26日,本篇文章为大家展示了JVM Log技术原理及用法是什么,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你能有所收获。介绍一下JVM Log的概念,初始化和释放,JVM Log
千家信息网最后更新 2024年11月26日JVM Log技术原理及用法是什么

本篇文章为大家展示了JVM Log技术原理及用法是什么,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你能有所收获。

介绍一下JVM Log的概念,初始化和释放,JVM Log各个class的实现除了很自然地运用了继承,同时运用重载new/deleteoperator这个C++特有的技巧,也 有效地封装了JVM Log的创建和释放功能。

JVM Log简介

JVM在调试版本下,会输出hotspot.JVM Log。通过参数-XJVM Loggc:FileName,来设置GC的JVM Log。

JVM Log的实现主要在

\hotspot\src\share\vm\utilities\ostream.hpp  \hotspot\src\share\vm\utilities\ostream.cpp  \hotspot\src\share\vm\utilities\xmlstream.hpp  \hotspot\src\share\vm\utilities\xmlstream.cpp  \hotspot\src\share\vm\utilities\defaultStream.hpp

主要的class是:outputStream、fileStream、xmlTextStream、defaultStream

继承关系是:

ResourceObj
|
|-- outputStream
|
|--- fileStream
|
|--- xmlTextStream
|
|--- defaultStream

defaultStream::instance是其他模块调用的主要接口。

JVM Log的初始化

ostream_init()初始化defaultStream::instance
ostream_init_JVM Log()初始化JVM的DebugJVM Log和GC的JVM Log,
其中其核心代码是:defaultStream::instance->has_JVM Log_file();它转而调用voiddefaultStream::init_JVM Log();这是真正干活的代码了。
defaultStream::init_JVM Log的代码写的很清晰,其中只有一个C++的语法点需要注意:重载newoperator。

ostream.cppline346
fileStream*file=new(ResourceObj::C_HEAP)fileStream(try_name);
这是因为outputStream的父类是ResourceObj,ResourceObj重载了new和deleteoperator。关于C++语法就不多说了,太多的好书论及了这个问题。

JVM Log的最终释放

Threads::destroy_vm()
|
|--> exit_globals()
|
|--> ostream_exit()
|
|--> 用delete operator释放掉各个JVM Log

JVM Log各个class的实现除了很自然地运用了继承,同时运用重载new/deleteoperator这个C++特有的技巧,也 有效地封装了JVM Log的创建和释放功能。

上述内容就是JVM Log技术原理及用法是什么,你们学到知识或技能了吗?如果还想学到更多技能或者丰富自己的知识储备,欢迎关注行业资讯频道。

C++ 代码 原理 技术 有效 内容 功能 同时 技巧 技能 知识 自然 语法 这是 封装 简明 简明扼要 参数 只有 好书 数据库的安全要保护哪些东西 数据库安全各自的含义是什么 生产安全数据库录入 数据库的安全性及管理 数据库安全策略包含哪些 海淀数据库安全审计系统 建立农村房屋安全信息数据库 易用的数据库客户端支持安全管理 连接数据库失败ssl安全错误 数据库的锁怎样保障安全 天启网络技术有限公司有合作的吗 保力供应商平台保障数据库 数据库如何新建服务器名称 数据库语句求两字段值减 本溪软件开发费用 苹果服务器出错无法登录 软件开发工程师掌握哪些 软件开发shiqi 产品网络安全最关键的因素是 关系数据库中的关系是 金蝶kis服务器未启动 网络安全第一病毒 欧龙网络技术有限公司 几个常见的软件开发模型 黑龙江数据网络技术咨询报价 苹果商店下载的原神是什么服务器 深圳大数据软件开发费用 一个软件怎么加入sql数据库 如何登录远程主机的数据库 怎么设计博客数据库 生产数据库权限oracle 小学信息网络安全视频 宁波宁海区浪潮高密度服务器 虚无世界服务器枪械怎么获得 网络安全9年级的手抄报 服务器发邮件卡死 电脑对服务器的远程访问 网络安全执法检查的自查报告 网络安全专题会主持词 网络安全传播途径
0