• 笔试题 遗忘点记录 面向对象特点 + 产生死锁条件+ windows内存管理方法


        )单一职责原则。就一个类而言,应该仅有一个引起它变化的原因。                    //感觉这个是 低耦合 高内聚

    (2)开放封闭原则。软件实体对外扩展开放,对修改封闭。
                             //这个基础。。

    (3)里氏替换原则。子类的实例能够替换父类的实例。
                            //这个。。多态

    (4)接口分离原则。采用多个专门的接口比使用单一的总接口要好。一个类对另一个类的依赖性建立在最小的接口上。
                             //这个讲的就是 多个接口如何处理
    (5)依赖倒置原则。依赖抽象不要依赖具体实现。
                             //。。说的是接口, 就是 工场设计模式。
    ---------------

    产生死锁的4个必要条件是:

    互斥条件,一个资源每次只能被一个进程使用;

    请求与保持条件,一个进程因请求资源而阻塞时,对已获得的资源保持不放;

    不可剥夺条件,进程已获得的资源,在未使用完之前,不能强行剥夺;

    循环等待条件,若干进程之间形成一种头尾相连的循环等待资源关系。

    这四个条件时死锁的必要条件,只要系统发生死锁,这些条件必然成立,而只要上述条件之一不满足,就不会发生死锁。

    http://talentluke.iteye.com/blog/1499911

    3.银行家算法的思路:
    1),进程一开始向系统提出最大需求量.
    2),进程每次提出新的需求(分期贷款)都统计是否超出它事先提出的最大需求量.


    3),若正常,则判断该进程所需剩余剩余量(包括本次申请)是否超出系统所掌握的 剩余资源量,若不超出,则分配,否则等待.

    Windows的内存管理方法

    windows提供了3种方法来进行内存管理:

    1.虚拟内存,最适合用来管理大型对象或者结构数组

    2.内存映射文件,最适合用来管理大型数据流(通常来自文件)以及在单个计算机上运行多个进程之间共享数据。

    3.内存堆栈,最适合用来管理大量的小对象

  • 相关阅读:
    windows服务启动有界面的程序
    [转发]读取txt防止读到乱码--自动根据文件编码进行读取
    线程UI同步
    SQL2012导出的脚本没有if exists判断
    power designer 设计数据库生成到oracle数据库
    经典三层,单元工作模式出错的解决方案
    EF ObjectStateManager 中已存在具有同一键的对象。ObjectStateManager 无法跟踪具有相同键的多个对象
    Oracle 11g 客户端连接 oracle 10g 服务端,乱码问题
    EF 连接oracle 基础连接失败 问题解决
    vs2010 oraclelient 引用问题
  • 原文地址:https://www.cnblogs.com/titer1/p/2709229.html
Copyright © 2020-2023  润新知