[英]javaw.exe high cpu usage
我创建了一个可运行的 jar,它在单个线程上运行。 该线程执行具有 100 次迭代的 for 循环。 然而,在 i3 处理器 win7 64 位机器上,cpu usgae 高达 60%。 我尝试在 进程资源管理器中分析 cpu 使用情况
本机线程正在消耗 CPU。 本机线程都在 msvcr100.dll!endthreadex+0x60 消耗 cpu 我使用的是 jdl 1.7。 有人可以建议这里可能出了什么问题。
这是代码:应用程序接受套接字连接并处理客户端发送的日期。
while (true)
{
try
{
Socket sock = ssock.accept();
// This is the function which has the for loop
obj.MyFunction();
}
catch(Exception ex)
{
ssock.close();
}
Thread.sleep(1000);
}
void MyFunction()
{
for(int i=0; i < 1000;i++)
{
// Processing done here
}
}
我怀疑如果你尝试这个:
ex.printStackTrace();
你可能会得到更多的信息。 现在,当您遇到异常时,您不知道发生了什么或为什么。 您对此保持沉默,这很少是击中异常的正确行为。
什么是处理? 如果您正在尝试做很多工作,那么达到 60% cpu 可能并不意外。 你的算法的 Big O 运行时是什么? 数据集的大小是多少?
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.