.NET平台下的管程类

这周帮老师做了一个介绍管程的PPT,很多书在讲操作系统中线程的管程时,都有标注上说,管程比较偏学术,没有哪个语言支持,像我的老师就问了很多同事,大家都不知道其实.NET平台已经实现了管程类来帮助我们管理线程。以下我用C#语言作为例子,来简单介绍一下。如果有哪位高手更加了解这个类,希望您可以多讲解一下,如果发现错误请提出!!非常感激~

.NET Framework的System.Threading命名空间下提供了monitor类来实现线程同步。它提供了资源访问的控制机制,允许一个特定的线程对资源的独占式访问。与Lock不同,它可以进一步提供控制线程的具体操作。
下面是对monitor类的方法介绍[1]
Public static void Enter(Object obj)—开始进入监控区,试图得到指定对象的监控器锁。
Public static void Exit(Object obj)—监控结束,并释放指定对象的监控锁。
Public static void Pulse(Object obj)—释放对象的锁,并叫醒等待队列里的第一个线程。
Public static void PulseAll(Object obj) )—释放对象的锁,并叫醒等
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值