从我的另一问题,关于SO我发现了其可能的是下面的简单方法上下文开关和线程执行在不同的CPU内核
void B()
{
if (_complete)
{
Console.WriteLine (_answer);
}
}
可以在不同的CPU,如果上下文切换,如果与控制台之间发生执行writeline call ..这是我的新闻,所以我现在想知道什么时候可以单线程代码切换到另一个CPU,以及为什么它可能在上述这样简单的情况下有意义?
+1 - 只需添加,您可以为线程设置Affinity以确保它返回到同一个处理器/内核 - 尽管通常不需要。 –
@Andras好的一点,你*可以*设置处理器的亲和力。我的意思是,这不是默认情况下。 – dlev
您可以通过API调用或通过任务管理器来设置处理器关联。 http://msdn.microsoft.com/en-us/library/system.diagnostics.processthread.processoraffinity。aspx然而,正如其他人所说,这通常不应该。我在执行CPU密集型渲染时通过任务管理器完成了此操作,以确保渲染软件不能使用其中一个(12个)内核,以便Windows UI保持响应。 –