gpt4 book ai didi

c# - 在 C# 中获取给定线程的 cpu 号

转载 作者:太空狗 更新时间:2023-10-30 01:09:42 25 4
gpt4 key购买 nike

在C#中,有什么方法可以获取正在执行线程的内核的cpu id(或内核编号)?我有一个四核处理器,我想知道在跨越一些线程时,它们分配了哪些内核?

我发现 System.Environment.ProcessorCount 给出了当前的 CPU 总数,但是有什么方法可以知道哪个特定的 CPU 实例正在执行给定的线程。

最佳答案

我不知道可以提供此功能的 native .NET 函数。但是如果您准备使用 P/Invoke 并且在 Windows 2003、Vista 或更高版本上运行,那么您可以调用 GetCurrentProcessorNumber .

当然,这只会为您提供在该特定时间片执行线程的 CPU(核心),下次调度线程时,它可能会在完全不同的核心上运行,即使操作系统会努力调度出于性能原因,同一核心上的线程。

关于c# - 在 C# 中获取给定线程的 cpu 号,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6179186/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com