看了一些pv操作的例子,有一些基本原理不是想得很清楚。
有一个进程
while(true)
{
p(s);
......
v(s);
}
s的初值为1。
那么我的问题是,当多个该进程需要执行时,是否会造成死锁呢。
我是这么想的:
当3个进程申请时,进行p操作,然后s就会变成-2,那么p操作不是就会阻塞掉吗,都等待别的进程释放s,造成了死锁。
谁来反驳一下我。
看了一些pv操作的例子,有一些基本原理不是想得很清楚。
有一个进程
while(true)
{
p(s);
......
v(s);
}
s的初值为1。
那么我的问题是,当多个该进程需要执行时,是否会造成死锁呢。
我是这么想的:
当3个进程申请时,进行p操作,然后s就会变成-2,那么p操作不是就会阻塞掉吗,都等待别的进程释放s,造成了死锁。
谁来反驳一下我。
本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。