【发布时间】:2014-02-02 13:32:35
【问题描述】:
我正在尝试为 Android 编写代码,它会给我一些关于处理器和线程运行的内核的信息(id?)。
我已经用谷歌搜索并搜索了一些灵感来源,但没有运气。我所知道的是,我很可能需要一些 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 中调用函数并得到正确的响应。
这里有人可以填空吗?
【问题讨论】:
-
您在寻找
getcpu()/sched_getcpu()吗? stackoverflow.com/questions/491520/… -
据我所知,sched_getcpu 仅针对 mips 架构实现。我尝试将其移植到 arm,但出现编译错误。 __getcpu 找不到,或类似的东西。
标签: android multithreading concurrency android-ndk java-native-interface