zoukankan      html  css  js  c++  java
  • 重新整理操作系统概念系类——管程

    前言

    为什么产生管程这个东西呢?

    以前我该系列中,提及到有信号量这个概念,但是呢,信号量有个问题那就是编写代码复杂容易出问题。

    而且信号量写的不好,还可能出现死锁问题。

    比如说p1先请求s1,然后请求s2;p2先请求s2然后请求s1。

    然后p1请求到s1,p2请求到52,然后这两个就都无法执行了,这种问题还是很容易发生的。

    那么有没有什么能解决这个问题呢?

    这就是管程。

    正文

    管程的组成:

    1.局部于管程的共享数据结构说明。

    2.对该数据结构进行一组操作的一组过程。

    3.对局部于管程的共享数据设置初始化的语句。

    4.管程有一个名字。

    管程的特征:

    1.局部于管程的数据只能被局部于管程的过程访问。

    2.一个进程只有通过调用管程内的过程还能进入管程访问共享数据。

    3.每次仅允许一个进程在管程内进行某个内部过程。

    管程对于生产消费问题

    c# 管程机制

    可以去看一下我的代码:

    https://www.cnblogs.com/aoximin/p/13224393.html

  • 相关阅读:
    Spring Data Rest如何暴露ID字段
    Windows空间清理2
    把爱好变成职业
    面对面的口头信息传递对人决策的影响力最大
    最好是更好的敌人
    文明主线
    钱的本质
    2019第42周日
    开源与商业化
    生涯四度
  • 原文地址:https://www.cnblogs.com/aoximin/p/13538507.html
Copyright © 2011-2022 走看看