Android NDK C++中的多线程
前言
我们都知道Android是基于Linux内核的,而Linux是遵循POSIX线程标准的,POSIX线程库中有
一系列Pthreads API方便我们对Linux线程的操作。所以我们在Android中使用C/C++线程也就转到
了使用POSIX线程库。他们都在头文件“pthread.h”中。
函数相关
1、pthread_t:
用于声明一个线程对象如:pthread_t thread;
2、pthread_creat :
用于创建一个实际的线程如:pthread_create(&pthread,NULL,threadCallBack,NULL);其总共接收4个参数,第一
个参数为pthread_t对象,第二个参数为线程的一些属性我们一般传NULL就行,第三个参数为线程执行的函数( void* threadCallBack(void data) ),第四个参数是传递给线程的参数是void类型的既可以传任意类型,这里要注意c++语言对于数据类型要比c语言严禁很多。如果传递的不是void*,则需要强制的类型转换。
3、pthread_exit :
用于退出线程如:pthread_exit(&thread),参数也可以传NULL。注:线程回调函数最后必须调用此方法,不然APP
会退出(挂掉)。