C++多线程框架 (二)---------Mutex互斥和Sem信号量

本文介绍了C++中多线程编程的基础——Mutex互斥和Sem信号量。阐述了互斥锁的初始化、锁定和解锁操作,并提供了Mutex基类的定义。同样,对于信号量,文章提到了初始化、发送和接收信号量的操作,并定义了CCountingSem基类。通过COperatingSystemFactory类创建不同操作系统的Mutex和Semaphore实例。文章最后指出,有了互斥锁和信号量,可以进一步构建多线程模型。
摘要由CSDN通过智能技术生成
互斥和信号量是多线程编程的两个基础,其原理就不详细说了,大家去看看操作系统的书或者网上查查吧。
对于互斥的实现,无论什么操作系统都离不开三个步骤
1.初始化互斥锁
2.锁操作
3.解锁操作

对于不同的系统只是实现的函数有一些不同而已,但是功能其实都大同小异,在锁操作和解锁操作的时候大部分系统都有超时机制在里面,来保证不会一直锁在某个地方,我们为了框架简单,没有设置超时,进行锁操作的时候如果得不到锁,将一直等待在那里。

Mut
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值