加入收藏 | 设为首页 | 会员中心 | 我要投稿 东莞站长网 (https://www.0769zz.com/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 服务器 > 搭建环境 > Linux > 正文

Linux下定位异常消耗的线程实战解析

发布时间:2022-01-14 12:40:34 所属栏目:Linux 来源:互联网
导读:之前分享过一篇Linux开发coredump文件分析实战分享 ,今天再来分享一篇实战文章。 在我们嵌入式linux开发过程中,开发过程中我们经常会使用多进程、多线程开发。那么多线程使用过程中,我们大概率会遇到某线程长时间占用cpu,导致设备执行异常。 通常只有四
   之前分享过一篇Linux开发coredump文件分析实战分享 ,今天再来分享一篇实战文章。
 
   在我们嵌入式linux开发过程中,开发过程中我们经常会使用多进程、多线程开发。那么多线程使用过程中,我们大概率会遇到某线程长时间占用cpu,导致设备执行异常。
 
   通常只有四五个线程,我们可以通过一个个线程调试捕捉到异常线程,如果你开发的设备上面运行了大概三四十个线程,我们一下子不好看到对应哪个线程出问题,也不好使用列举法进行搜索,这个时候我们需要配合一些工具进行监控以及检查我们执行的进程下面的线程。下面我就给大家介绍一下我自己工作中实际遇到的例子。
 
情节介绍:在工作中,我遇到这样一个问题,我的设备跑机的时候发现,机器运行某些状态时候有些怪异,对于某些机制的处理响应不够及时,最后top检查,发现是我运行的某个进程中的某几个线程运行cpu占有率很高,导致其他的一些线程无法及时运行。
 
找到问题了,接下来我们就开始找对应的线程然后进行修改,前文提到,进程里面有一两个线程还好说,我们可以通过一些比较基础的方法,一个个线程进行log或者其他手段的信息输出,但是如果我们遇到单个进程里面有很多线程的时候,我们如何检查呢?
 

(编辑:东莞站长网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    热点阅读