0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

鸿蒙开发系统基础能力:ohos.hidebug Debug调试

jf_46214456 来源:jf_46214456 作者:jf_46214456 2024-06-24 17:35 次阅读

Debug调试

icon-note.gif说明: 本模块首批接口从API version 8开始支持。后续版本的新增接口,采用上角标单独标记接口的起始版本。 开发前请熟悉鸿蒙开发指导文档 :[gitee.com/li-shizhen-skin/harmony-os/blob/master/README.md]

使用hidebug,可以获取应用内存的使用情况,包括应用进程的静态堆内存(native heap)信息、应用进程内存占用PSS(Proportional Set Size)信息等;可以完成虚拟机内存切片导出,虚拟机CPU Profiling采集等操作。

导入模块

import hidebug from '@ohos.hidebug';

hidebug.getNativeHeapSize

getNativeHeapSize(): bigint

获取native heap内存的总大小。

本接口在OpenHarmony 3.1 Release版本仅为接口定义,暂不支持使用。

系统能力: SystemCapability.HiviewDFX.HiProfiler.HiDebug

返回值:

类型说明
bigint返回native heap内存总大小。

示例:

let nativeHeapSize = hidebug.getNativeHeapSize();

hidebug.getNativeHeapAllocatedSize

getNativeHeapAllocatedSize(): bigint

获取native heap内存的已分配内存大小。

本接口在OpenHarmony 3.1 Release版本仅为接口定义,暂不支持使用。

系统能力: SystemCapability.HiviewDFX.HiProfiler.HiDebug

返回值:

类型说明
bigint返回native heap内存的已分配内存。

示例:

let nativeHeapAllocatedSize = hidebug.getNativeHeapAllocatedSize();

hidebug.getNativeHeapFreeSize

getNativeHeapFreeSize(): bigint

获取native heap内存的空闲内存大小。

本接口在OpenHarmony 3.1 Release版本仅为接口定义,暂不支持使用。

系统能力: SystemCapability.HiviewDFX.HiProfiler.HiDebug

返回值:

类型说明
bigint返回native heap内存的空闲内存。

示例:

let nativeHeapFreeSize = hidebug.getNativeHeapFreeSize();

hidebug.getPss

getPss(): bigint

获取应用进程PSS内存大小。

系统能力: SystemCapability.HiviewDFX.HiProfiler.HiDebug

返回值:

类型说明
bigint返回应用进程PSS内存大小。

示例:

let pss = hidebug.getPss();

hidebug.getSharedDirty

getSharedDirty(): bigint

获取进程的共享脏内存大小。

系统能力: SystemCapability.HiviewDFX.HiProfiler.HiDebug

返回值:

类型说明
bigint返回进程的共享脏内存大小。

示例:

let sharedDirty = hidebug.getSharedDirty();

hidebug.getPrivateDirty9+

getPrivateDirty(): bigint

获取进程的私有脏内存大小。

系统能力: SystemCapability.HiviewDFX.HiProfiler.HiDebug

返回值:

类型说明
bigint返回进程的私有脏内存大小。

示例:

let privateDirty = hidebug.getPrivateDirty();

hidebug.getCpuUsage9+

getCpuUsage(): number

获取进程的cpu占用率。

如占用率为50%,则返回0.5。

系统能力: SystemCapability.HiviewDFX.HiProfiler.HiDebug

返回值:

类型说明
number获取进程的cpu占用率。

示例:

let cpuUsage = hidebug.getCpuUsage();

hidebug.startProfiling

startProfiling(filename : string) : void

启动虚拟机Profiling方法跟踪,startProfiling()方法的调用需要与stopProfiling()方法的调用一一对应,先开启后关闭,严禁使用start->start->stopstart->stop->stopstart->start->stop->stop等顺序的调用方式。

系统能力: SystemCapability.HiviewDFX.HiProfiler.HiDebug

参数

参数名类型必填说明
filenamestring用户自定义的profiling文件名,根据传入的filename,将在应用的files目录生成filename.json文件。

示例:

hidebug.startProfiling("cpuprofiler-20220216");
// code block
// ...
// code block
hidebug.stopProfiling();

hidebug.stopProfiling

stopProfiling() : void

停止虚拟机Profiling方法跟踪,stopProfiling()方法的调用需要与startProfiling()方法的调用一一对应,先开启后关闭,严禁使用start->start->stopstart->stop->stopstart->start->stop->stop等顺序的调用方式。

系统能力: SystemCapability.HiviewDFX.HiProfiler.HiDebug

示例:

hidebug.startProfiling("cpuprofiler-20220216");
// code block
// ...
// code block
hidebug.stopProfiling();

hidebug.dumpHeapData

dumpHeapData(filename : string) : void

虚拟机堆导出。

系统能力: SystemCapability.HiviewDFX.HiProfiler.HiDebug

参数:

参数名类型必填说明
filenamestring用户自定义的虚拟机堆文件名,根据传入的filename,将在应用的files目录生成filename.heapsnapshot文件。

示例:

hidebug.dumpHeapData("heap-20220216");

hidebug.getServiceDump9+

getServiceDump(serviceid : number) : string

获取系统服务信息。

此接口为系统接口,三方应用不可用。

系统能力: SystemCapability.HiviewDFX.HiProfiler.HiDebug

参数:

参数名类型必填说明
serviceidnumber基于该用户输入的service id获取系统服务信息。

返回值:

类型说明
string返回dump的service信息文件的绝对路径。HarmonyOS与OpenHarmony鸿蒙文档籽料:mau123789是v直接拿

搜狗高速浏览器截图20240326151547.png

示例:

let serviceId = 10;
let pathName = hidebug.getServiceDump(serviceId);

审核编辑 黄宇

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 调试
    +关注

    关注

    7

    文章

    558

    浏览量

    33780
  • 开发系统
    +关注

    关注

    0

    文章

    38

    浏览量

    9632
  • DEBUG
    +关注

    关注

    3

    文章

    89

    浏览量

    19785
  • 鸿蒙
    +关注

    关注

    57

    文章

    2272

    浏览量

    42528
收藏 人收藏

    评论

    相关推荐

    鸿蒙实战项目开发:【短信服务】

    岗位需要掌握那些核心技术点?为此鸿蒙开发学习必须要系统性的进行。 而网上有关鸿蒙开发资料非常的少,假如你想学好
    发表于 03-03 21:29

    鸿蒙开发AI应用方案(四)Helloworld

    为applications应用,放入鸿蒙的子系统中。6. 编译可以通过ssh登录虚拟机或直接在虚拟机上进行编译,python build.py my_hi3516dv300 -b debug注意:一定
    发表于 12-24 17:57

    鸿蒙原生应用/元服务开发-Stage模型能力接口(二)

    系统能力:以下各项对应的系统能力均为SystemCapability.Ability.AbilityRuntime.Core2.AbilityConstant.LaunchReas
    发表于 12-11 14:48

    鸿蒙原生应用/元服务开发-Stage模型能力接口(四)

    ‘@ohos.app.ability.AbilityStage’; 1.AbilityStage.onCreate onCreate(): void 当应用创建时调用。 系统能力
    发表于 12-14 15:39

    鸿蒙原生应用/元服务开发-Stage模型能力接口(五)

    在Stage模型下使用 二、 导入模块 import common from \'@ohos.app.ability.common\'; 三、系统能力 :以下各项对应的系统
    发表于 12-15 15:11

    鸿蒙原生应用/元服务开发-Stage模型能力接口(七)

    下文ApplicationContext对系统环境变化监听回调的能力,包括onConfigurationUpdated方法。本模块首批接口从API version 9 开始支持。后续版本的新增接口,采用上角标单独标记
    发表于 12-19 11:03

    鸿蒙原生应用/元服务开发-Stage模型能力接口(八)

    ‘@ohos.app.ability.ExtensionAbility’; 系统能力:SystemCapability.Ability.AbilityRuntime.AbilityCore 示例: class MyExtens
    发表于 12-20 16:12

    STM32调试DEBUG时需要了解那些知识相关资料概述

    学习STM32开发,肯定少不了DEBUG调试这一步骤。那么,本文带你了解一下这个调试相关的知识。本文以STM
    的头像 发表于 11-11 11:39 6982次阅读
    STM32<b class='flag-5'>调试</b><b class='flag-5'>DEBUG</b>时需要了解那些知识相关资料概述

    浅谈STM32调试DEBUG相关知识

    说说STM32调试DEBUG相关知识
    的头像 发表于 03-06 15:23 3993次阅读

    鸿蒙系统是基于什么开发

    争议,那么鸿蒙系统到底是基于什么开发的呢?下面小编就为大家带来鸿蒙系统是基于什么开发的答案。
    的头像 发表于 07-05 17:12 1.1w次阅读

    STM32(Cortex-M)内核DEBUG调试接口知识

    学习STM32开发,肯定少不了debug调试这一步骤。那么,本文带你了解一下这个调试相关的知识。
    发表于 02-08 16:02 9次下载
    STM32(Cortex-M)内核<b class='flag-5'>DEBUG</b><b class='flag-5'>调试</b>接口知识

    Fusion Debug调试系统的各项技术、指标介绍

    昭晓Fusion Debug™是一款基于创新架构的全面调试系统,建立在芯华章全新的、自主开发调试数据库之上,并由创新的设计推理引擎和高性能
    的头像 发表于 05-23 17:06 1150次阅读

    DevEco Studio 4.1带来多种调试能力,助力鸿蒙原生应用开发高效调试

    调试能力,适用于不同的开发场景,如跨语言调试、混合堆栈、反向调试、热重载、ArkUI Inspector等,本文将介
    的头像 发表于 02-04 15:35 588次阅读

    鸿蒙开发系统基础能力ohos.hilog 日志打印

    hilog日志系统,使应用/服务可以按照指定级别、标识和格式字符串输出日志内容,帮助开发者了解应用/服务的运行状态,更好地调试程序。
    的头像 发表于 06-25 15:59 335次阅读

    鸿蒙开发系统基础能力ohos.pasteboard 剪贴板

    以下各项对应的系统能力均为SystemCapability.MiscServices.Pasteboard。
    的头像 发表于 06-26 16:48 277次阅读
    <b class='flag-5'>鸿蒙</b><b class='flag-5'>开发</b><b class='flag-5'>系统</b>基础<b class='flag-5'>能力</b>:<b class='flag-5'>ohos</b>.pasteboard 剪贴板