我想知道是否有可能识别具有特定线程ID的线程使用的物理处理器(核心)?
例如,我有一个多线程应用程序,它有两(2)个线程(例如,thread-id = 10和thread-id = 20).我在具有双核处理器(核心1和核心2)的系统上运行该应用程序.那么,我如何获得thread-id = 20的线程使用的核心号码?
附: Windows平台.
谢谢,
丹尼斯.
除非您使用线程关联,否则不会将线程分配给特定的核心.对于每个时间片,线程可以在不同的核上执行.这意味着如果有一个函数来获取线程的核心,那么当你获得返回值时,线程很可能已经在另一个核心上执行.
如果您使用线程关联,则可以查看Windows线程关联函数(http://msdn.microsoft.com/en-us/library/ms684847%28v=VS.85%29.aspx).