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 吗? 的相关文章

  • WebClient.DownloadDataAsync 冻结了我的 UI

    我在 Form 构造函数中的 InitializeComponent 之后有以下代码 using WebClient client new WebClient client DownloadDataCompleted new Downloa
  • 锁定 ASP.NET 应用程序变量

    我在 ASP NET 应用程序中使用第三方 Web 服务 对第 3 方 Web 服务的调用必须同步 但 ASP NET 显然是多线程的 并且可能会发出多个页面请求 从而导致对第 3 方 Web 服务的同时调用 对 Web 服务的调用封装在自
  • XPATH 查询、HtmlAgilityPack 和提取文本

    我一直在尝试从名为 tim new 的类中提取链接 我也得到了解决方案 给出了解决方案 片段和必要的信息here https stackoverflow com questions 2982862 extracting a table ro
  • 并行化斐波那契序列生成器

    我正在学习并行化 在一项练习中 我得到了一些我应该提高性能的算法 其中之一是斐波那契数列生成器 array 0 0 array 1 1 for q 2 q lt MAX q array q array q 1 array q 2 我怀疑 这
  • 进程退出后 POSIX 名称信号量不会释放

    我正在尝试使用 POSIX 命名信号量进行跨进程同步 我注意到进程死亡或退出后 信号量仍然被系统打开 在进程 打开它 死亡或退出后是否有办法使其关闭 释放 早期的讨论在这里 当将信号量递减至零的进程崩溃时 如何恢复信号量 https sta
  • 将 OpenCV Mat 转换为数组(可能是 NSArray)

    我的 C C 技能很生疏 OpenCV 的文档也相当晦涩难懂 有没有办法获得cv Mat data属性转换为数组 NSArray 我想将其序列化为 JSON 我知道我可以使用 FileStorage 实用程序转换为 YAML XML 但这不
  • C# 处理标准输入

    我目前正在尝试通过命令行断开与网络文件夹的连接 并使用以下代码 System Diagnostics Process process2 new System Diagnostics Process System Diagnostics Pr
  • 将下拉列表与字典绑定

    我将字典绑定到下拉列表 举例来说 我的字典中有以下项目 Test1 123 Test2 321 我希望下拉文本采用以下格式 Test1 Count 123 Test2 Count 321 我沿着以下路径走 但没有运气 MyDropDown
  • C 中“complex”的默认类型

    根据我读过的文档 C99 和更高版本的支持float complex double complex and long double complex作为复杂类型 但是 此代码在使用时编译时不会发出警告gcc Wall Wextra inclu
  • 时间:2019-03-17 标签:c++fstream并发访问

    如果从不同的进程 线程同时访问文件会发生什么 据我所知 没有锁定文件的标准方法 只有操作系统特定的功能 就我而言 文件将被经常读取而很少写入 现在如果A打开一个文件进行读取 ifstream 并开始读取块 和B打开相同的文件进行写入 ofs
  • 使用 Swift(使用 SwiftJWT)和 REST API 连接到 Apple Store Connect - 失败并出现 401

    我正在尝试通过他们的 REST API 连接到 Apple Store Connect 虽然这在几天前有效 但我无法弄清楚为什么它停止工作 现在我无法通过身份验证 即我发出的服务器响应的每个请求都是 401 我是否遗漏了什么 我做什么 生成
  • 无法为 wsdl 文件创建服务引用

    I have wsdl文件和xsd我本地机器上的文件 我想在项目中添加服务引用 我没有网络服务 我只有wsdl file 我收到以下错误 The document was understood but it could not be pro
  • 如何使用 CSI.exe 脚本参数

    当你运行csi exe 安装了 Visual Studio 2015 update 2 您将得到以下语法 Microsoft R Visual C Interactive Compiler version 1 2 0 51106 Copyr
  • 无法在 C# 中为 EventArgs 分配使用派生类型的事件处理程序

    所以我有一个事件声明如下 public event EventHandler OnChangeDetected 然后我有以下处理程序被分配给该事件 myObject OnChangeDetected OnTableChanged 我的理解是
  • C 中使用 getrandom 实现随机浮点数

    我试图生成一个介于 0 和 1 之间的随机浮点数 无论是在 0 1 还是 0 1 对我来说都不重要 网上关于此的每个问题似乎都涉及rand 呼叫 播种time NULL 但我希望能够每秒多次调用我的程序 并每次都获得不同的随机数 这引导我找
  • 如何在dll级别读取app.config? [复制]

    这个问题在这里已经有答案了 我在一个解决方案中有一个控制台应用程序项目和库项目 dll The 图书馆项目有 app config 文件 我在其中存储我在库中使用的一些键值对 控制台应用程序引用此 dll 我有另一个 app config
  • Autoconf 问题:“错误:C 编译器无法创建可执行文件”

    我正在尝试使用 GNU 自动工具构建一个用 C 编写的程序 但显然我设置错误 因为当configure运行 它吐出 configure error C compiler cannot create executables 如果我看进去con
  • 有没有办法直接在函数参数中格式化字符串而不是使用临时字符串?

    我有一个接受字符串 字符数组 作为参数的函数 void enterString char my string 当使用这个函数时 我经常发现自己想要输入格式化的字符串 我使用 sprintf 来做到这一点 然而 我每次都必须创建一个临时字符串
  • printf或iostream如何指定点后的最大位数

    字符串采用什么格式printf or iomanip我应该使用 iostream 中的运算符以以下格式打印浮点数 125 0 gt 125 125 1 gt 125 1 125 12312 gt 125 12 1 12345 gt 1 12
  • 将 char 绑定到枚举类型

    我有一段与此非常相似的代码 class someclass public enum Section START MID END vector section Full void ex for int i 0 i section

随机推荐

  • 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