gpt4 book ai didi

c# - 每个线程的处理时间?

转载 作者:行者123 更新时间:2023-11-30 22:45:11 25 4
gpt4 key购买 nike

我想计算每个线程的处理时间。我该怎么做。?假设我的 100 个线程正在同时执行相同的方法 work(),那么如果我输入以下代码帮助我得到我想要的东西

Process thisProc = Process.GetCurrentProcess();
string procName = thisProc.ProcessName;
DateTime started = thisProc.StartTime;

int memory = thisProc.VirtualMemorySize;
int priMemory = thisProc.PrivateMemorySize;
int physMemory = thisProc.WorkingSet;

ProcessPriorityClass priClass = thisProc.PriorityClass;
TimeSpan cpuTime = thisProc.TotalProcessorTime;

Console.WriteLine(" started: {0}", started.ToString());
Console.WriteLine(" CPU time: {0}", cpuTime.ToString());

Console.WriteLine(" Virtual Memory: {0}", memory + " ; Private Memory: " + priMemory + " ; Physical Memory: " + physMemory);

最佳答案

GetThreadTimes() 提供此信息。但是很难使用,因为它需要线程的句柄,而 .NET 框架不允许您这样做。简单的解决方案是在线程函数内启动一个秒表,并在其完成时停止()它。

关于c# - 每个线程的处理时间?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3165440/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com