我正在考虑开发一个应用程序,它将在六核机器上运行六个异步任务,每个核心一个.
但是有可能将任务锁定到自己的核心吗?
他们的想法是让他们自己主要运行,但有时通过共享内存区域进行通信.但是,我希望任务尽可能不受干扰地运行.
最佳答案
您正在寻找的概念称为“线程亲和力”.它是如何实现的以及要求它的接口是特定于操作系统的.
在Linux下,尝试sched_setaffinity(). glibc也可以提供pthread_attr_setaffinity_np().
我正在考虑开发一个应用程序,它将在六核机器上运行六个异步任务,每个核心一个.
但是有可能将任务锁定到自己的核心吗?
他们的想法是让他们自己主要运行,但有时通过共享内存区域进行通信.但是,我希望任务尽可能不受干扰地运行.
在Linux下,尝试sched_setaffinity(). glibc也可以提供pthread_attr_setaffinity_np().