C#每个处理器创建一个线程

示例

Environment.ProcessorCount获取当前计算机上逻辑处理器的数量。

然后CLR将每个线程调度到一个逻辑处理器,从理论上讲,这可能意味着每个线程在不同的逻辑处理器上,所有线程在单个逻辑处理器上或其他组合。

using System;
using System.Threading;

class MainClass {
    static void Main() {
        for (int i = 0; i < Environment.ProcessorCount; i++) {
            var thread = new Thread(Secondary);
            thread.Start(i);
        }
        
    }

    static void Secondary(object threadNumber) {
        System.Console.WriteLine("来自线程的Hello World: " + threadNumber);
    }
}