在OS X中是否可以设置pthread CPU亲和性?

5
在Linux中,sched.h定义了sched_setaffinity()函数,但在Mac OS X 10.6的

1
请查看此博客:http://yyshen.github.io/2015/01/18/binding_threads_to_cores_osx.html - jackb
1个回答

5

Mac OS X拥有线程亲和性API,您可以使用pthread ID作为thread_policy_set(pthread_mach_thread_np(pthreadId)),但据我所知,没有像sched_setaffinity这样的API。


1
我去看了一下Mac OS X 10.6 SDK的/usr/include/mach/thread_policy.h文件,发现thread_policy_set() / thread_policy_get()函数被注释掉了!这是什么意思?! - Ryan
它与pthread非常兼容。请查看/Developer/Extras/CoreAudio/PublicUtility/CAPThread.cpp或谷歌“thread_policy_set pthread_mach_thread_np”。而thread_policy_set/thread_policy_get在/Developer/SDKs/MacOSX10.6.sdk/usr/include/mach/x86_64/thread_act.h中。无论如何,这些API与sched_setaffinity不同。 - Kazuki Sakamoto

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接