我必须继续运行 24x7 的方法。基本上,应用程序应该每秒处理 40 个数据,通过使用一些线程。我可以使用 while 或递归调用 ling 相同的方法。但在这两个过程中,cpu 的使用率都太高了,几乎 95-100%。我不能使用计时器,因为那时处理线程无法正常工作。根据提供的解决方案,许多人谈论使用带有线程睡眠的while。但是如果我使用线程睡眠,那么每次迭代都会延迟。我正在使用 c# 4.0。
我的问题:有没有更好的解决方案来减少 CPU 的使用?
主要方法:
static void Main(string[] args)
{
while(true)
{
processData();
Thread.sleep(1000);
// here i use a 1 second sleep just for give a breath of CPU.
//But this one second sleep make me delay for enter data processing.
// I am looking for a better solution that no sleep time will use and CPU usages will getting low.
}
}
//Method should run always
static string processData()
{
{
// Open and close threads to process the data in every second.
}
// processData(); // it can be used for recursive method calling
}