`
aigo
  • 浏览: 2644435 次
  • 性别: Icon_minigender_1
  • 来自: 宜昌
社区版块
存档分类
最新评论

查看linux哪个线程占用cpu比较高

 
阅读更多

原文:http://michael-softtech.iteye.com/blog/813735

 

有时候在应用里面会出现cpu占用率很高的情况。

这时候就需要确定到底是哪个线程出了问题。

通常的ps,top等命令列出来的都是进程信息,而jvm通常只有一个主线程。

这就给我们debug造成了不便。于是想办法找出有问题的线程信息而非进程信息。

 

搜索了一下,大概有这么几种方式:

1.  cd /proc

    grep SleepAVG  **/status  | sort -k2,2 | head

2. top   然后Shift+H

3. ps -m

 

前两种我试过,第三种还有点问题。可能跟系统有关系,我们用的是RedHat

分享到:
评论

相关推荐

    可以查看多线程cpu占用率的工具

    用在嵌入式linux平台上,通常busybox的top无法看到多线程应用的每个线程的cpu占用率,特地编写了这个小工具.

    linux服务器找到占用cpu高的java代码的办法

    通过以上步骤,我们可以有效地找出并解决Linux服务器上Java应用占用CPU过高的问题。记得在处理过程中保持耐心和细致,因为性能问题往往需要深入分析才能找到根本原因。同时,定期的性能测试和代码审查也是预防此类...

    使用C++获取指定线程的CPU使用率

    在C++编程中,获取指定线程的CPU使用率是一项重要的任务,这有助于优化程序性能,监测系统资源消耗。本文将详细介绍如何通过C++来实现这一功能。 首先,我们需要理解CPU使用率的基本概念。CPU使用率是衡量处理器在...

    CPU占用高

    这有助于我们识别占用CPU资源最多的程序。 2. **恶意软件检查**: 高CPU占用有时可能由病毒、木马或恶意软件引起。运行反病毒扫描并确保操作系统和所有软件的更新是最新的,可以防止这类问题。 3. **系统服务与...

    获取每个线程的CPU使用率源代码

    对于线程级别的CPU使用率,我们需要关注的是单个线程如何占用CPU资源。通常,操作系统会维护关于线程执行的信息,包括其运行时间、等待时间等,这些信息可用于计算线程的CPU使用率。 在Windows系统中,我们可以使用...

    linux下查看java进程下线程占用cpu情况

    通过以上方法,你可以深入了解Linux下Java进程及线程对CPU的占用情况,从而进行问题定位和性能优化。在实际操作中,通常会结合多个工具和方法,以便从不同角度全面分析。记得,持续监控和分析是找出问题的关键。

    查看LINUX进程内存占用情况

    查看 LINUX 进程内存占用情况 Linux 操作系统中查看进程内存占用情况是系统管理员和开发人员日常任务中非常重要的一部分。通过查看进程内存占用情况,可以了解系统中进程的资源占用状况,故障排查和性能优化。下面...

    线上应用故障排查之一:高CPU占用

    1. **性能监控**:使用工具如Prometheus、Grafana、JMX或操作系统的top、ps命令来实时监控CPU使用情况,找出占用CPU最高的进程或线程。 2. **日志分析**:查看应用程序日志,寻找异常行为的线索,如异常堆栈跟踪、...

    Linux CPU占用率高故障排查.docx

    Linux CPU 占用率高故障排查 Linux CPU 占用率高故障排查是一种常见的故障现象,需要通过系统监控和性能分析工具来排查和解决。下面是 Linux CPU 占用率高故障排查的知识点总结: 一、问题一:高 CPU 利用率一定就...

    linux-让多核CPU达到指定的CPU使用率脚本

    - Linux内核使用调度器(如CFS,Completely Fair Scheduler)来决定哪个进程应该获得CPU时间片。脚本可能通过系统调用如`fork()`或`pthread_create()`创建新进程或线程来模拟负载。 5. **性能监测工具**: - `...

    教你找出 运行java项目,使cpu 100%,如何排查出是哪个jar包的哪个线程导致的

    此外,可以利用`top -Hp PID`来查看指定进程内的线程资源使用情况,这可以帮助你更精确地定位到是哪个线程导致了CPU占用率高。配合`PressureTest.java17`这个位置的代码审查,你将能够找出问题的原因。 如果你对`...

    linux多线程手册

    - **线程调度**:操作系统决定哪个线程将被分配到CPU上执行的过程。 - **线程取消**:允许在运行时停止某个线程。 - **线程同步**:用于确保多个线程之间能够正确地协作,避免数据竞争和死锁等问题。 ##### 使用64...

    Linux多线程编程手册

    Linux多线程编程是现代操作系统中应用广泛的编程模式,尤其适用于需要同时执行多个任务的应用程序,它能够在多处理器或多核CPU系统中有效提升程序的执行效率,优化资源利用。多线程编程允许在同一个进程中创建多个...

    linux 系统cpu占用率,进程线程状态监控,shell脚本

    linux 系统cpu占用率,进程线程状态监控,shell脚本。linux系统架构下用于正常监控程序运行状态以及cpu占用率,日志系统等

    linux多线程编程指南

    - **线程调度**:决定哪个线程应该获得CPU时间。 - **线程取消**:允许程序在适当的时候终止某个线程。 - **线程同步**:确保多个线程正确且有序地共享资源。 #### 二、基本线程编程 ##### 线程库 在Linux环境下...

    linux内存和CPU占用情况

    1. `top`或`htop`:列出所有运行的进程,按照CPU占用率排序,便于找出占用CPU较高的进程。 2. `ps`命令:可以查看特定进程的CPU使用情况,例如`ps -aux`会显示所有进程的信息。 3. `mpstat`:报告每个CPU核心的活动...

    CPU 高消耗排查

    - 通过这种方式,我们可以发现某个进程内部哪个线程占用CPU最高,比如这里发现PID为5159的线程占用非常高。 #### 三、使用`jstack`进行线程堆栈分析 1. **`jstack`工具简介** - `jstack`是Java自带的一个诊断工具...

Global site tag (gtag.js) - Google Analytics