当前位置: 首页 > news >正文

在macos上查看当前进程的栈信息

概述

在调试程序时,如cpu莫名的高或低,一个常用的方式就是打印当前进行的调用栈,然后确认各线程的执行函数是否有异常。

在linux系统中可以使用pstack命令,直接打印各线程的栈信息,可惜在macos上没有该命令。一种解决方式就是将代码迁移到linux平台上进行debug(事实上笔者也是这么做的,因为linux平台有很多熟悉的工具),但代码迁移存在成本(系统函数版本不一致),macos上的系统文件版本和linux平台上大概率是不同的。

因此比较直接的方式还是找到代替pstack的mac版本,也是本文介绍的方法。

具体做法

step1:打开mac本自带的程序“活动监视器”

step2: 找到正在调试的进程,如果当前进程太多,可以使用右上角的搜索框辅助

step3: 选中正在调试的进程,点击左上角的“系统诊断选项”,在弹出的下拉菜单中点击“取样进程”

step4: 等一段时间后(采样时间,5s左右),会弹出一个分析文件。该文件头部会提示对该进程采样的次数,然后根据采样到的线程栈函数出现次数由高到低显示,主要信息包括线程id和采样次数。

http://www.lryc.cn/news/280977.html

相关文章:

  • 医院患者满意度调查指标设计
  • 2023年全国职业院校技能大赛软件测试赛题—单元测试卷④
  • Open CV 图像处理基础:(一)Open CV 在windows环境初始化和 Java 动态库加载方式介绍
  • 云联接:揭开SD-WAN神秘面纱,颠覆你对网络的认知!
  • 拓展操作(四) 使用nginx反向代理jenkins
  • C语言关于指针函数可变参数的使用方法和打印相应数据
  • centos7下升级openssh9.4p1及openssl1.1.1v版本
  • vue+element弹窗内---下拉框定位问题解决(方法之两种)
  • MATLAB二维与三维绘图实验
  • usb个人总结
  • 进阶Docker2:数据卷和挂载目录
  • SHAP:最受欢迎、最有效的可解释人工智能工具包
  • 语境化语言表示模型-ELMO、BERT、GPT、XLnet
  • 和MATLAB相关的设置断点的快捷键
  • 实人认证(人像三要素)API:加强用户身份验证
  • 美易官方:一路火到2024!英伟达还在创造历史
  • 6个免费/商用图片素材网站
  • Java使用IText生产PDF时,中文标点符号出现在行首的问题处理
  • npx和npm有什么区别,包管理器yarn的使用方法,node的版本管理工具nvm使用方法
  • 【网络技术】【Kali Linux】Wireshark嗅探(九)安全HTTP协议(HTTPS协议)
  • POI-tl 知识整理:整理3 -> 动态生成表格
  • chatgpt和文心一言哪个更好用
  • 移动端开发进阶之蓝牙通讯(一)
  • 一个完整的流程表单流转
  • 2024杭州国际智慧城市,人工智能,安防展览会(杭州智博会)
  • 编程笔记 html5cssjs 031 HTML视频
  • SpringBoot外部配置文件
  • 99个Python脚本实用实例
  • HarmonyOS 工程目录介绍
  • 门店管理系统驱动智慧零售升级