为什么这个无限循环不会占用100%的CPU

时间:2013-12-26 00:42:34

标签: c# .net infinite-loop

我很确定无限循环消耗100%的CPU。为什么以下循环没有? (任务管理器显示0%)

do
{
    // Do something
} while (Console.ReadKey(true).Key != ConsoleKey.Escape);

1 个答案:

答案 0 :(得分:7)

发出线程上的

Console.ReadKey阻塞,直到用户按下某个键。 while(true)循环连续执行,消耗的CPU数量与操作系统允许的数量相同。

参考: http://msdn.microsoft.com/en-us/library/x3h8xffw(v=vs.110).aspx