在 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);}在你的 Java 代码中,调用 create_thread() 函数。首先,在 build.gradle 文件中的 android 部分添加以下内容:externalNativeBuild { cmake { cppFlags "-std=c++11" }}在你的 Java 类中,声明一个 native 方法:public class MainActivity extends AppCompatActivity { // ... public native void createThread();}在 native-lib.c 文件中,实现 JNI 函数来调用 create_thread() 函数:#include <jni.h>JNIEXPORT void JNICALLJava_com_example_myapplication_MainActivity_createThread(JNIEnv *env, jobject obj) { create_thread();}在你的 Java 代码中,加载库并调用 native 方法: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。这只是一个简单的示例,你可以根据需要修改代码以适应你的项目。


