线程同步的实质

130 篇文章 0 订阅
123 篇文章 1 订阅
       当我们的程序中创建了额外的线程时,即除默认的主线程外,还有其它的线程,这个时候,我们可能要让各个线程同步,常用的方法,有临界区域,互斥量,信号量,事件对象,可等待的计时器等,那大家知道线程同步的实质是什么吗?一个线程要让自己与其它线程同步,就得让自己睡眠,也就是线程同步的实质是睡眠,再睡眠后,操作系统不在为其调度CPU时间,因此它就停止了执行;线程在睡眠之前会告诉操作系统,要让自己停止睡眠,必须等到某种特殊的事情发生,然后操作系统重新为其调度CPU时间,这个时候线程就又能执行了,而这里我们说的特殊事情,就是前面说的几种同步方法,其中,除第一种外,其它都是内核对象,操作系统会清理它,保证不会出现死锁的情况,而临界区域如果不正常释放,就会出现死锁的情况。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值