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

【HTOP 使用指南】:如何理解主从线程?(以 Faster-LIO 为例)

htop 是 Linux 下常用的进程监控工具,它比传统的 top 更友好、更直观,尤其在分析多线程或多进程程序时非常有用。

以下截图就是在运行 Faster-LIO 实时建图时的 htop 状态展示:

在这里插入图片描述

🔍 一、颜色说明

  • 白色(或亮色)字体:表示一个主进程或父线程,即程序的入口线程。
  • 绿色字体:表示与主进程相关联的子线程或子进程
  • 缩进结构:显示它们之间的父子/主从关系,方便一眼看出整个程序的结构。

🧩 二、以 Faster-LIO 为例分析

  • 主线程 PID 28301:运行的是 /home/nvidia/lite_cog/slam/devel/lib/faster_lio/run_mapping_online
  • 子线程 PID 34799、28359、32090 等:也是执行相同路径的命令,被缩进显示,表明它们是主进程的子线程或 fork 出来的子进程。

这类程序往往是使用多线程进行点云处理、IMU 插值、地图更新等任务,每个绿色行代表一个并发执行的模块。

📊 三、如何解读资源占用

  • CPU%:显示每个线程/进程的实时 CPU 占用。比如 PID 28301 达到 328%,说明该线程使用了多个核心。
  • MEM%:该线程使用的内存占比。
  • TIME+:线程从创建开始累积的运行时间,观察哪一部分最耗时。
  • Command:可以看到完整的执行命令行,辨别模块来源。

🛠️ 四、实用技巧

  1. F5 (Tree View):切换为树形视图,自动显示主从关系(截图中已开启)。
  2. F6 (Sort):可以按 CPU、内存等排序,快速识别资源瓶颈。
  3. F3 (Search):搜索特定进程,如输入关键词 lio 定位建图进程。
  4. F9 (Kill):终止某个线程或进程(需谨慎使用)。

✅ 总结

在使用 htop 分析如 Faster-LIO、ROS2、Python 多线程程序时,善用颜色和缩进结构可以:

  • 快速定位主线程与其子模块;
  • 分析系统资源瓶颈;
  • 判断是否存在死循环、线程泄露等问题。

相关文章:

  • 接口出现 请求参数格式错误 的解决方法
  • 02.Golang 切片(slice)源码分析(一、定义与基础操作实现)
  • 流体力学绪论(期末复习)
  • LVGL(线条控件lv_line)
  • cursor 出现问题 为客户解决问题
  • 解构赋值
  • 2025智能体基建在进化过程中带来的质变
  • VBA —— 学习Day6
  • 0512 - 2094. 找出 3 位偶数
  • 手搓传染病模型(SEITA)
  • 【JS逆向基础】前端基础-JS
  • 防火墙安全策略基础配置
  • 一小时学会Docker使用!
  • C++类的继承和派生
  • 计算机组成原理———CPU指令周期精讲
  • Java静态变量笔记
  • 并发笔记-并发问题与事件驱动模型(五)
  • Spring Bean有哪几种配置方式?
  • Nacos源码—8.Nacos升级gRPC分析五
  • neptune系统详解
  • 广州一饮品店取名“警茶”?市监局:取名没问题,但图像会产生误解
  • 沈阳一超市疑借领养名义烹食流浪狗,当地市监局:已收到多起投诉
  • 刘国中:持续加强护士队伍建设,更好保障人民身体健康
  • 教育部基础教育教指委:稳步推进中小学人工智能通识教育
  • 十三届全国政协经济委员会副主任张效廉被决定逮捕
  • 基因编辑技术让蜘蛛吐彩丝