十三个线程,CPU使用率100%如何解决?
1:服务器程序手工启动十三个线程,运行时CPU使用率基本上达到100%。
请问各位高手,这个问题该如何解决?
2://读取PLC数据
private void ReadPLC1Data(object StateInfo)
{
while (RdadPLC1DataState)
{
try
{
TV1PLCCtrl.ReadToDB(ConnectString, "MOTION_MESSAGE", "GENERAL_MESSAGE", "STATUS_MESSAGE");
Thread.Sleep(ThreadWaitTime);
}
catch
{
Thread.Sleep(ThreadWaitTime);
}
}
}
这个方法基本上是个死循环,能否放到线程池中执行?如果不行,定义为System.Threading.Timer行不行?(同类的操作有8个,CPU使用率同样达到100%,该如何降下来?)
烦请各位帮忙解决。