`
yy8354
  • 浏览: 80390 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

同一进程内线程的CPU占用

 
阅读更多

public ArrayList ShowProcessThreadList(Process pID)
{
ArrayList List = new ArrayList();
ProcessThreadCollection tList;
tList = pID.Threads;
TimeSpan totalThreads = new TimeSpan();
foreach (ProcessThread tID in tList)
{
totalThreads = totalThreads + tID.TotalProcessorTime;
}
foreach (ProcessThread tID in tList)
{
double CpuTime = (double)tID.TotalProcessorTime.Ticks / (double)totalThreads.Ticks * 100;
List.Add(tID.Id.ToString() + "|" + CpuTime.ToString());
}

return List;

}
返回的arraylist 是 "ThreadID | cpu占用比" 的一个string

因为只是为了调试程序用 一般人估计用不到去考虑线程的cpu占用情况 没有把实际进程在系统内cpu占用乘进去 所以只是体现那个线程CPU占用过高可能产生问题而编写
由于进程的代码运行时间内考虑和线程切换的时间 进程时间并不等于进程内所有线程总时间量和 所以采用了先遍历一次线程把总时间量的和计算出来 再算百分比

分享到:
评论

相关推荐

    查看进程各线程资源占用工具

    同一进程内的多个线程共享进程的内存资源,但拥有独立的执行栈,使得它们可以并发执行。 2. **CPU占用率**: - **CPU利用率**:衡量处理器空闲时间与总时间的比例,反映了一个线程或进程对CPU资源的消耗程度。高...

    进程与线程的区别和联系

    1. **资源占用**:每个进程都有自己独立的地址空间和资源,而同一进程中的线程共享这些资源。 2. **上下文切换开销**:进程间的切换需要更多的资源和时间,因为涉及到保存和恢复进程的状态信息;线程间的切换开销较...

    进程&线程查看器2.0.rar_Process_c 查看进程_进程线程

    同一进程内的多个线程可以共享进程的资源,如内存和打开的文件。相比进程,线程间的切换开销更小,提高了系统的并发性能。 3. **进程与线程的关系**:一个进程中可以有多个线程,这些线程共享进程的内存空间,但...

    进程查看工具 线程查看工具 端口占用查看工具

    在操作系统中,进程是执行中的程序,每个进程都有独立的内存空间,而线程是进程内部的执行单元,共享同一进程的资源。线程间的切换比进程快,因此多线程编程常用于提高程序的并发性能。 tcpView是一款由...

    进程 & 线程查看器

    同一进程内的线程可以共享进程的内存空间,这使得线程间通信更为高效。一个进程中可以有多个线程同时运行,这样的设计使得多任务并行处理成为可能。线程间的通信通常通过共享内存或者使用线程同步原语如互斥锁、信号...

    进程和线程的区别与联系

    每个线程都有自己独立的生命周期,可以在同一进程中并发执行。线程相比进程更轻量级,它们的创建和销毁开销较小,使得多线程在执行效率上优于多进程。在Java中,创建线程主要有两种方式:继承Thread类和实现Runnable...

    进程、线程查看器

    一个进程可以包含一个或多个线程,这些线程共享同一进程的资源,如内存空间。线程之间的通信更为高效,因为它们无需跨进程边界,这使得多线程编程成为实现并发执行的有效方式。 "查看进程"的工具可以帮助用户监控...

    进程、线程调度模型,大家多多下载

    同一进程内的多个线程共享该进程的地址空间,使得它们之间的通信更加高效便捷。线程之间共享资源(如内存)的特点使其在实现并发处理时更为灵活和高效。 #### 进程与线程的区别 - **地址空间:**进程间拥有独立的...

    进程线程作业

    同一进程内的线程可以高效地通信和共享数据,因为它们无需通过复杂的进程间通信(IPC)机制。线程切换开销比进程切换小,因此多线程常用于实现并发操作,提高程序性能。例如,一个Web服务器可能在一个进程中创建多个...

    进程与线程1

    进程间通过IPC(Inter-Process Communication)机制进行通信,而线程则是在同一进程内的执行单元,共享进程资源,如堆内存(存储对象)和栈内存(存储基本类型和对象引用)。 线程间通信相对简单,但线程也有自己的...

    windows进程线程信息查询

    ProcExp具有直观的用户界面,使得用户能够轻松地查看每个进程的内存使用情况、CPU占用率、打开的句柄、模块加载信息以及线程详情等。 一、进程与线程概念 1. **进程**:进程是程序的一次执行实例,是资源分配的基本...

    LoadRunner中进程运行和线程运行的区别

    - 同一进程内的线程共享该进程的所有资源(除了CPU寄存器外),包括代码段、数据段等。 - 线程之间的切换开销较小,因为它们共享同一地址空间。 - 线程间的通信更为简单直接,可以通过全局变量等方式进行。 - ...

    应用程序进程 线程查看

    在同一进程中,多个线程可以共享进程的资源,如内存空间,这使得线程间的通信更为高效。相比于进程,线程的创建和销毁开销小得多,因此在需要并发执行的任务中,多线程技术常被采用。 线程也有状态,包括运行态、...

    c语言多进程多线程编程.pdf

    在同一进程中多个线程共享进程的资源,如内存空间、文件句柄等。线程间通信简单且切换成本低。 #### 进程的状态 - **新建**: 进程正被创建。 - **运行**: 进程正在执行。 - **阻塞**: 进程等待某个事件发生。 - **...

    linux进程与线程汇总.ppt

    线程是进程内的一个执行实体,是CPU调度的基本单位。与进程相比,线程更轻量级,它们共享同一地址空间和大部分资源,通信更为高效。线程间的切换比进程间的切换更快,因为不必涉及地址空间的切换。线程的状态也包括...

    北京大学操作系统 进程线程模型ppt2

    线程是比进程更轻量级的执行单元,可以在同一进程内并发执行,共享进程的资源。例如,在字处理软件中,可以有多个线程分别负责文本编辑、格式设置和打印预览等功能,提高了应用程序的响应性和效率。 **2. 线程的...

    进程线程的概念,讲的很详细

    在一个进程中可以有多个线程,它们共享同一进程的资源,但每个线程有自己的程序计数器、栈和局部变量。线程间的通信和同步可以通过各种机制实现,如信号量和PV操作,用于解决互斥和同步问题。例如,当多个线程访问...

    Python多进程写入同一文件的方法

    但是打开任务管理器发现CPU只占用了25%,上网找了一下原因发现是由于一个叫GIL的存在,使得Python在同一时间只能运行一个线程,所以只占用了一个CPU,由于我的电脑是4核的,所以CPU利用率就是25%了。 既然多线程没有...

    02-1-进程与线程之进程1

    这段代码是一个简单的CPU占用程序,它接收用户输入的字符串并持续打印,直到用户按下Ctrl-C为止。如果同时启动多个这样的进程,尽管它们在物理上不会真正同时运行(由于CPU的单线程性质),但在操作系统管理下,这些...

    操作系统-线程论文.docx

    2. **并发性**:不仅进程之间可以并发执行,而且同一进程内部的多个线程之间也可以并发执行,这使得操作系统具有更好的并发性,提高了系统资源的利用率和系统的整体吞吐量。 3. **资源拥有**:线程通常不直接拥有...

Global site tag (gtag.js) - Google Analytics