在 Android 中,你可以使用 pthread 库来实现多线程编程
首先,确保你的项目已经安装了 NDK。在 Android Studio 中,转到 “Tools” > “SDK Manager” > “SDK Tools”,然后勾选 “NDK (Side by side)”。点击 “Apply” 安装 NDK。
在你的项目中创建一个新的 C/C++ 源文件。例如,创建一个名为 native-lib.c
的文件。
在 native-lib.c
文件中,包含 pthread 头文件并定义一个线程函数。例如:
#include <pthread.h>
#include<stdio.h>
#include <unistd.h>
void* thread_function(void *arg) {
int i;
for (i = 0; i < 5; i++) {
printf("Thread: %d\n", i);
sleep(1);
}
return NULL;
}
void create_thread() {
pthread_t thread;
pthread_create(&thread, NULL, thread_function, NULL);
pthread_join(thread, NULL);
}
create_thread()
函数。首先,在 build.gradle
文件中的 android
部分添加以下内容:externalNativeBuild {
cmake {
cppFlags "-std=c++11"
}
}
public class MainActivity extends AppCompatActivity {
// ...
public native void createThread();
}
native-lib.c
文件中,实现 JNI 函数来调用 create_thread()
函数:#include <jni.h>
JNIEXPORT void JNICALL
Java_com_example_myapplication_MainActivity_createThread(JNIEnv *env, jobject obj) {
create_thread();
}
public class MainActivity extends AppCompatActivity {
// ...
static {
System.loadLibrary("native-lib");
}
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
createThread();
}
}
现在,当你运行应用程序时,它将创建一个新的线程并在其中执行 thread_function
。这只是一个简单的示例,你可以根据需要修改代码以适应你的项目。