72、管程机制


实现互斥大体有五种方法,前面看了软件方法,硬件方法,信号量方法,剩下的还有管程方法 和 消息传递两种方法,接下来先看 管程方法

Monitor——面向对象方法

  • 用信号量实现互斥,编程容易出错(wait、signal的出现顺序和位置非常重要)
  • 管程是用并发pascal、pascal plus,Modula-2,modula-3等语言编写的程序,现在已经形成了许多库函数。管程可以锁定任何对象,如链表或链表的元素等;
  • 用管程实现互斥比用信号量实现互斥,更简单、方便;
  • 管程是软件模块,由若干过程、局部于管程的数据初始化语句(组)组成;
  • 特点:
    1、局部变量只能被管程内部使用;
    2、进程要使用临界资源的话,需要调用管程内部的一个过程来使用;
    3、一次只允许一个进程进入管程去执行;
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值