当前位置: 首页> 健康> 美食 > 找项目网_程序代码大全_百度如何推广广告_国内最新新闻大事

找项目网_程序代码大全_百度如何推广广告_国内最新新闻大事

时间:2025/8/24 2:03:15来源:https://blog.csdn.net/qq_29935433/article/details/142459027 浏览次数:0次
找项目网_程序代码大全_百度如何推广广告_国内最新新闻大事

minitrace使用

文章目录

    • minitrace使用
      • 简介
      • 获取
      • 用法
      • 结果查看
      • 例程解析

简介

minitrace 是一个轻量级的跟踪库,用于创建和记录程序的运行时跟踪,以便进行性能分析。 在C++程序中插入性能监控点,通过记录函数或任务的开始和结束时间,生成trace.json文件。 minitrace生成的trace.json文件可以通过ChromeTrace Viewer(内置于Chrome浏览器中的工具)进行可视化。

获取

  • github上面的是基于C语言实现的,地址为:https://github.com/hrydgard/minitrace.git
  • 可以在行为树的仓库中找到c++版本的,地址:https://github.com/BehaviorTree/BehaviorTree.CPP.git
    • 3rdparty/minitrace

用法

  • 参照README.md

结果查看

  • 打开Chrome浏览器,并输入chrome://tracing进入Trace Viewer界面
  • 加载(load)trace.json文件
  • 查看和分析数据:加载成功后,可以在界面看到各线程的运行时间等性能数据

例程解析

#include <unistd.h>
#include <iostream>
#include "minitrace/minitrace.h"using namespace minitrace;int main(int argc, const char *argv[]) 
{int i;// 初始化 minitrace 库,并指定输出跟踪数据的文件路径mtr_init("trace.json");// 设置进程和线程的名称,这些信息会在跟踪数据中显示MTR_META_PROCESS_NAME("minitrace_test");MTR_META_THREAD_NAME("main thread");int long_running_thing_1;int long_running_thing_2;// 定义两个整数变量,用于跟踪两个长时间运行的任务。MTR_START 宏用于标记任务的开始MTR_START("background", "long_running", &long_running_thing_1);MTR_START("background", "long_running", &long_running_thing_2);// 使用 MTR_BEGIN 宏开始跟踪名为 "outer" 的事件,并使程序暂停 80 毫秒MTR_BEGIN("main", "outer");usleep(80000);// 循环三次,每次开始一个名为 "inner" 的事件,暂停 40 毫秒,然后结束该事件,再暂停 10 毫秒for (i = 0; i < 3; i++) {MTR_BEGIN("main", "inner");usleep(40000);MTR_END("main", "inner");usleep(10000);}// 记录第一个后台任务的中间步骤,并再次暂停 80 毫秒MTR_STEP("background", "long_running", &long_running_thing_1, "middle step");usleep(80000);// 结束 "outer" 事件的跟踪MTR_END("main", "outer");usleep(50000);// 记录一个名为 "the end" 的即时事件MTR_INSTANT("main", "the end");usleep(10000);// 结束两个后台任务的跟踪MTR_FINISH("background", "long_running", &long_running_thing_1);MTR_FINISH("background", "long_running", &long_running_thing_2);// 刷新跟踪数据到文件,并关闭 minitrace 库mtr_flush();mtr_shutdown();return 0;
}

在这里插入图片描述

关键字:找项目网_程序代码大全_百度如何推广广告_国内最新新闻大事

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com

责任编辑: