正在加载图片...
管程的现:汉森方法 ●调用查看原语 check:如果管程是开放的, 则执行这条原语后关闭管程相应进程继 续执行:如果管程是关闭的,则执行这条 原语后相应进程被置成等待调用状态 procedure check(var IM interf) beg in if M count 2=0 then M, count2:=M count2 1 ese beg in W(IM intem.M count1+ 1 IM. count 1 end end管程的实现:汉森方法 ⚫ 调用查看原语check:如果管程是开放的, 则执行这条原语后关闭管程,相应进程继 续执行;如果管程是关闭的,则执行这条 原语后相应进程被置成等待调用状态 procedure check(var IM interf); begin if IM.count2 = 0 then IM.count2 := IM.count2 + 1; else begin IM.count1 := IM.count1 + 1; W(IM.intsem); end; end;
<<向上翻页向下翻页>>
©2008-现在 cucdc.com 高等教育资讯网 版权所有