gpt4 book ai didi

Android:找出线程运行在哪个内核上

转载 作者:塔克拉玛干 更新时间:2023-11-02 22:26:37 25 4
gpt4 key购买 nike

我正在尝试为 Android 编写代码,它会给我一些关于处理器和运行线程的内核的信息(id?)。

我用 google 和 grep 搜索了一些灵感来源,但没有成功。我所知道的是,我很可能需要一些 C/C++ 调用。

我的工作如下:

#include <jni.h>

int getCpuId() {
// missing code
return 0;
}

int getCoreId() {
// missing code
return 0;
}

JNIEXPORT int JNICALL Java_com_spendoptima_Utils_getCpuId(JNIEnv * env,
jobject obj) {
return getCpuId();
}

JNIEXPORT int JNICALL Java_com_spendoptima_Utils_getCoreId(JNIEnv * env,
jobject obj) {
return getCoreId();
}

整个项目编译和运行都很好。我能够从 Java 中调用函数并得到正确的响应。

这里有人可以填空吗?

最佳答案

这似乎对我有用:

//...
#include <sys/syscall.h>
//...
int getCpuId() {

unsigned cpu;
if (syscall(__NR_getcpu, &cpu, NULL, NULL) < 0) {
return -1;
} else {
return (int) cpu;
}
}
//...

关于Android:找出线程运行在哪个内核上,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21114421/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com