关于饥饿和有限等待之间的关系,我有四个问题。
饥饿自由意味着死锁自由吗?
我的回答:
从here开始,免费饥饿的定义是
免于饥饿 - :每个尝试获取锁定的线程最终都会成功
免于死锁 - :某些线程尝试获取锁,然后某个线程(不一定是if语句中引用的线程;强调添加)将成功获取锁。 / p>
所以我可以说饥饿 - 自由意味着僵局 - 自由
饥饿自由是否意味着等待?
有限等待意味着饥饿 - 自由吗?
有限等待和死锁自由是否意味着饥饿自由?
我被困在2,3,4点。
答案 0 :(得分:0)
2 。饥饿 - 自由是否意味着有限的等待?
sub DWORD PTR [rbp-4],511
表示线程将无限期地等待。但是Starvation
意味着线程不会永远等待并最终获得资源。 starvation-freedom
表示在线程请求进入其Bounded waiting
之后以及在该请求被授予之前允许线程进入其critical sections
的次数有限制。因此,明确critical section
暗示starvation freedom
,否则,其他一些主题可能始终位于bounded waiting
且与Critical section
相矛盾。
3 。有限等待意味着饥饿 - 自由吗?
答案也是肯定的,因为在超过限制后,等待过程将有机会输入starvation-freedom
因此无法无限期等待,因此critical section
。
4 。有限等待和死锁自由意味着饥饿 - 自由吗?
从上面的解释可以清楚地看出它也是如此。