一.线程间的通信
由于同一个进程内的多个线程共享该进程的资源,因此,对于多线程而言,一般的通信方式即为使用全局变量进行,因此,对于多线程之间的通信,主要解决的问题即为多个线程同时对于共享区域进行读写时出现的同步问题。多线程通信主要解决的即为线程间同步问题。
二.线程间的同步
线程间的同步主要可以使用下面几种方式:1.互斥量(mutex);2.读写锁(ReadWriteLock);3.信号量(Semaphore).
2.1 互斥量(mutex)
互斥量是一个可以处于两态之一的变量:解锁和加锁。对于一个互斥量进行加锁,如果该互斥量本来就是解锁(unlock)状态,那么当前线程就立即占有并锁定(lock)它;否则,当前线程就会被阻塞,直到掌握这个互斥量的线程对它进行解锁为止。
优点ÿ