鸿蒙(HarmonyOS)性能优化实战-耗时分析器Time Profiler 教程指南

DevEco Studio集成的DevEco Profiler性能调优工具(以下简称为Profiler),提供Time、Allocation、Snapshot、CPU等场景化分析任务类型。开发应用或服务过程中,如果遇到卡顿、加载耗时等性能问题,开发者通常会关注相关函数执行的耗时情况。Profiler提供的Time场景分析任务,可在应用/服务运行时,展示热点区域内基于CPU和进程耗时分析的调用栈情况,并提供跳转至相关代码的能力,使开发者更便捷地进行代码优化。

使用约束

已通过USB连接设备并在设备上打开需要调试的设备。

仅在应用为debug编译模式时使用。

仅支持OpenHarmony API 9及以上版本的Stage工程。

场景示例

本示例设置两个页面,示例场景存在页面跳转时间过长的问题。

主页面代码如下,包含一个页面跳转按钮。

import router from '@ohos.router'

@Entry
@Component
struct Index {
   
 build() {
   
  Row() {
   
   Column() {
   
    Button("点击跳转").onClick(() => {
   
     onJumpClick();
    })
   }
   .width('100%')
  }
  .height('100%')
 }
}

// 跳转下个页面
function onJumpClick(): void {
   
 router.pushUrl({
   
  url: 'pages/second' // 目标url
 }, router.RouterMode.Standard, (err) => {
   
  if (err) {
   
   console.error(`Invoke pushUrl failed, code is ${
     err.code}, message is ${
     err.message}`);
   return;
  }
  console.info('Invoke pushUrl succeeded.');
 });
}

跳转后页面代码如下,页面包含100个Swiper组件,每个Swiper组件的子组件为带有100个ListItem的List组件,搭配ForEach进行渲染。

@Component
struct SwiperChild {
    // Swiper的子组件:带有100个ListItem的List组件
 @State arr: number[] = [];

 aboutToAppear(): void {
   
  for (let i = 1; i <= 100; i++) {
   
   this.arr.push(i);
  }
 }

 build() {
   
  Column() {
   
   List({
    space: 20 }) {
   
    Fo
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值