C# 抑制绘制方法增加cpu使用率
我的主要更新循环如下所示:C# 抑制绘制方法增加cpu使用率,c#,xna,cpu,xna-4.0,C#,Xna,Cpu,Xna 4.0,我的主要更新循环如下所示: public ovveride void Update(GameTime gametime) { if (!paused) { // Do a lot of clever things } else { SuppressDraw(); } // Function to check mouse input PauseButton.Update(gametime); }
public ovveride void Update(GameTime gametime)
{
if (!paused)
{
// Do a lot of clever things
}
else
{
SuppressDraw();
}
// Function to check mouse input
PauseButton.Update(gametime);
}
我注意到,使用Windows的任务管理器,当我启用暂停时,我的应用程序的CPU使用率从最小最大值2%-4%上升到最小最大值30%-34%
为什么??我做错什么了吗?如果不知道SupersDraw函数中的内容,我们就无法真正帮助您。这不是我的方法:)FixedTimeStep设置为什么?当它为false时,您的Update()方法将被更频繁地调用,从而烧掉核心。在这两种情况下,它都会这样做!我发现了同样的问题。我认为我很聪明,通过使用SuppressDraw()和只有在发生变化时才绘图来节省CPU。奇怪的是,事实并非如此。对此有什么见解吗?