critical section 临界区:通过对多线程的串行化来访问公共资源或一段代码,速度快,适合控制数据访问。
mutex 互斥量:为协调共同对一个共享资源的单独访问而设计的。
首先,讨论互斥量和临界区之前,理解下他们和用户态和内核态的关系。
- 临界区是非内核对象,只在用户态进行锁操作,速度快;
- 互斥量是内核对象,在核心态进行锁操作,速度慢。
临界区只能用于对象在同一进程里线程间的互斥访问;互斥体可以用于对象进程间或线程间的互斥访问。
critical section 临界区:通过对多线程的串行化来访问公共资源或一段代码,速度快,适合控制数据访问。
mutex 互斥量:为协调共同对一个共享资源的单独访问而设计的。
首先,讨论互斥量和临界区之前,理解下他们和用户态和内核态的关系。
临界区只能用于对象在同一进程里线程间的互斥访问;互斥体可以用于对象进程间或线程间的互斥访问。