繁体   English   中英

对于Mac和BSD,我如何找到当前线程运行的cpu?

[英]How do I find the cpu the current thread is running on, for Mac and BSD?

我正在寻找Mac OS和BSD上的一个功能,它相当于Linux的sched_getcpu()和Windows的GetCurrentProcessorNumberEx() ,以便为cpu本地存储实现一个库。 显然可以使用cpuid或rdtscp指令来模拟它,但是可以通过内核协作做得更好: https ://lkml.org/lkml/2007/1/6/190。

我已经知道线程的当前CPU可能会在我使用信息时发生变化。

一个两个问题涵盖了OSX的队列跟踪,以及一个dispatch_get_global_queue wiki页面,它涵盖了BSD的等价物。 我不知道你是否可以将队列映射到CPU,但如果是这样,那似乎是最接近的等价物。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM