sched_getcpu() 相当于 OS X 吗?

2024-01-07

在 OS X 上,有没有办法找出线程正在哪个 CPU 上运行? Linux 的等效函数是调度获取CPU http://man7.org/linux/man-pages/man3/sched_getcpu.3.html


获取当前处理器编号 https://stackoverflow.com/a/18866681/6736846示例显示了使用 CPUID 指令实现此功能的代码。我自己尝试过,可以确认它可以在 Mac OS X 上运行。

这是我在 Mac OS X 上使用的版本

#include <cpuid.h>

#define CPUID(INFO, LEAF, SUBLEAF) __cpuid_count(LEAF, SUBLEAF, INFO[0], INFO[1], INFO[2], INFO[3])

#define GETCPU(CPU) {                              \
        uint32_t CPUInfo[4];                           \
        CPUID(CPUInfo, 1, 0);                          \
        /* CPUInfo[1] is EBX, bits 24-31 are APIC ID */ \
        if ( (CPUInfo[3] & (1 << 9)) == 0) {           \
          CPU = -1;  /* no APIC on chip */             \
        }                                              \
        else {                                         \
          CPU = (unsigned)CPUInfo[1] >> 24;                    \
        }                                              \
        if (CPU < 0) CPU = 0;                          \
      }
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

sched_getcpu() 相当于 OS X 吗? 的相关文章

随机推荐

  • Kotlin 内联属性有哪些用例?

    作为属性 getter or setter通常没有函数作为参数 也没有reified https kotlinlang org docs reference inline functions html reified type parame
  • Google Chrome 防止捏合缩放

    我正在运行 Windows 8 1 的 Microsoft Surface Pro 2 上开发 Chrome 应用程序 最近 Chromium 团队决定在 Windows 8 的 Chrome 中添加捏合缩放手势 这一切都很好 然而 他们并
  • 需要通过CSS将网页中的图像居中

    即使调整浏览器大小 我也希望将图像在页面中垂直和水平居中 目前 我使用这个CSS centeredImage position fixed top 50 left 50 margin top 50px margin left 150px 还
  • 如何仅在尚未安装 .NET Framework 时安装它?

    有没有办法检查 NET Framework 4是否已安装并仅在系统中没有时才安装 我知道 如何通过检查以下注册表项来确定是否安装了 NET Framework 4 hasDotnet4 RegKeyExists HKEY LOCAL MAC
  • WKWebView 中的 Javascript - 评估 JavaScript 与 addUserScript

    我试图了解使用 WKWebview 执行 javascript 的最佳方式 有人可以给我使用 WKWebView 时的用例 最佳实践吗 何时使用添加用户脚本 and WKScript消息处理程序以及何时使用评估JavaScript let
  • 如何将数据播种到 Firebase Firestore?

    我有一个名为 Seed js 的文件 代码如下 我想将其数据从我的 React js 应用程序添加到 Firebase Firestore 有没有一个脚本可以让我做到这一点 想如果我包括 import seedDatabase from s
  • 在 Tensorflow 中添加整个训练/测试数据集的准确性摘要

    我正在尝试使用 Tensorboard 来可视化我的训练过程 我的目的是 当每个 epoch 完成时 我想使用整个验证数据集测试网络的准确性 并将此准确性结果存储到摘要文件中 以便我可以在 Tensorboard 中可视化它 我知道 Ten
  • 在 ggplot aes 中使用闪亮的输入值

    我正在尝试在 Shiny 中实现这 3 行代码 这是我想要的输出 install packages ggalt library ggalt health lt read csv https raw githubusercontent com
  • iOS 中的收据验证在沙箱测试期间返回不正确的信息

    我正在为我的应用程序实施收据验证 因为它是付费的 并且在以后的应用程序内购买中将是免费的 我已经设置了我的服务器和一切 并且我已经发送了收据数据 但是 当我收到响应时 无论如何 响应 JSON 总是显示original applicatio
  • 如何在绘图中添加多个带有循环的形状

    我使用plotly包在python中显示动态财务图表 然而 我没能用 for 循环将所有关键点线放在一张图表上 这是我的代码 fig update layout for i in range 0 len data shapes go lay
  • 如何防止IE10中滚动条覆盖内容?

    在 IE10 中 滚动条并不总是存在 当它出现时 它会作为覆盖层出现 这是一个很酷的功能 但我想为我的特定网站关闭它 因为它是一个全屏应用程序 而且我的徽标和菜单消失在其后面 IE10 CHROME 有人知道在 IE10 上始终将滚动条固定
  • 如何在我的共享 Hostgator 上创建 git 存储库?

    如何在我的共享 Hostgator 上创建 git 存储库 顺便获得了 SSH 访问权限 假设已经安装了 Git git init bare path to repo 如果未安装 Git 您将无法直接推送到托管存储库 但您可以通过执行以下操
  • 如何格式化/着色 NSTextView 字符串的技术

    我正在寻找一种可靠的技术来在 NSTextView 中进行简单的字符串格式化 粗体 斜体 文本解析几乎是用正则表达式完成的 但现在我需要应用字体特征并更改大小 关于如何将文本设为粗体的一些代码片段 textView textStorage
  • R:尽管“append = TRUE”,但当表存在时,为什么 dbWriteTable 会失败

    我正在尝试使用以下命令将新数据附加到已存在的 MySQL 表中dbWriteTable方法 我过去使用它没有问题 但现在失败了 因为表已经存在 这是尽管使用overwrite FALSE append TRUE 代码 full sum ta
  • 日食 | Packge 变成一个目录,破坏了我的整个项目

    所以我遇到的问题非常奇怪 当我设置了一个预先存在的项目 并将其从计算机 A 移动到计算机 B 时 我创建一个新项目并以正常方式导入它 它非常非常基于包 大约有 30 40 个包 将两个包制作成目录而不是包 例如 它不是 org projec
  • 为什么构造函数不能被显式调用,而析构函数却可以?

    在下面的 C 代码中 我可以显式调用析构函数 但不能显式调用构造函数 这是为什么 不会是明确的 ctor 调用更多富有表现力的 and unified与 dtor 案有关吗 class X int main X x X operator n
  • Key存在时出现KeyError

    使用 python 和 twitter api 获取 tweet 对象 我有一个包含推文的文件 tweetfile 我的计算机上的 txt 文件 我试图循环遍历对象以获取文本 我使用 tweetObj keys 检查了 twitter 对象
  • 使用nodemailer发送电子邮件

    我正在尝试使用 nodemailer 从我的应用程序发送电子邮件 我的设置如下 var nodemailer require nodemailer var smtpTransport require nodemailer smtp tran
  • 无法通过 ADB 连接到我的 Android 设备

    抱歉问了这个菜鸟问题 我在使用网络解决这个问题时遇到了麻烦 我试图通过 adb 将我的设备连接到我的电脑来调试我的应用程序 我的设备已植根 Adb 调试已启用 我下载了一个 adb 运行应用程序并启动了 ADB 现在我正在尝试 adb co
  • sched_getcpu() 相当于 OS X 吗?

    在 OS X 上 有没有办法找出线程正在哪个 CPU 上运行 Linux 的等效函数是调度获取CPU http man7 org linux man pages man3 sched getcpu 3 html 获取当前处理器编号 http