同步与互斥

互斥:指某一资源同时只能允许一个访问者对其访问,具有唯一性和排它性。但无法限制访问者对其访问顺序,即访问是无序的

同步:是指互斥基础上,通过其他几只实现资源的有序访问,大多情况同步已经实现了互斥。

 

线程同步的机制和方式:

1、临界区、互斥对象:主要用于互斥控制;都具有拥有权的控制方法,只有拥有该对象的线程才能执行任务,所以执行完后要释放该对象。

2、信号量、时间对象:时间对象是以同志方式进行控制,主要用于同步的控制。

 

1、临界区:通过线程串行化来控制访问公共资源的一段代码,速度快。在任意一个时刻,只能保证一个线程对共享资源进行访问。

2、互斥对象:互斥对象和临界区有点像,采用互斥对象机制,只有拥有互斥对象的线程才有访问公共资源的权限。因为互斥对象只有一个,所以能保证公共资源不能同时被多个线程访问。

3、信号量:信号量是内核对象,允许多个线程统一时刻同时访问同一资源,但是需要限制同时访问资源的线程数量

4、事件对象:通过通知操作的方式来保持线程同步,

posted @ 2022-05-05 09:19  雷雷提  阅读(279)  评论(0编辑  收藏  举报