Android JNI线程的同步 (十三)

Android Studio 版本   

  了解线程同步的两个变量 

pthread_mutex_t 互斥锁

线程的互斥:  目前存在两个线程 , 线程A和线程B, 只允许只有一个资源对临界资源进程操作 (大概意思就是 : A线程 进入操作临界资源的时候 , 那么 B线程 就要进行等待 . 等到 A线程 操作临界资源完成退出临界区后, 这时候 B线程 才能对临界区进行访问 .) . 每次保障只有线程访问临界资源 .  线程锁就是起到保护的作用 , 我们可以对某一个临界区进行加锁 .  在任意时间只有线程 执行临界区的代码.  这样就实现了多线程之间的互斥 . 

pthread_mutex_t 条件变量

条件变量 : 是用来实现线程之间的 唤醒和释放 , 我们可以控制线程进行等待 , 线程等待之后可以通知线程结束等待 后继续执行  . 

互斥锁使用不当就会造成线程之间的死锁 ,  就会造成线程一直等待

你可能感兴趣的:(AndroidNDK,java,NDK,jni,android,c)