可能重复:
Java 线程亲和性
我有一台服务器,它有一个 16 核 CPU。
在Java中,我需要创建一些线程(线程数小于16)。每个线程都需要运行一些操作,例如,处理一个事件队列。
如何创建这些线程以保证每个线程永远分配给一个核心?我的意思是我不希望操作系统为一个线程交换内核。我只希望一个线程专门在固定核心上运行。
我可以这样做吗?
我想要这个的原因是
我在同一台服务器上处理一些后台任务(计算密集型)和一些面向用户的任务。我不希望用户方面受到任何负面影响。例如,如果我的计算任务分配给 16 核,那么运行在用户端的线程肯定会受到负面影响,对吧?