软件特别是一些较大的软件都是由很多很多模块组成的,
SW = A + B + C + D + E + ...
而我们知道,这些模块几乎不会同时处于运行状态。
一般情况下,可能只有一个或其中几个模块处在同时运行中。

如果在软件启动时就将这些模块全部初始化,
其好处是因为所有的模块都已经被初始化了,所以当要运行其中某个模块时可以快速的运行起来;
但我们知道内存在系统中总是紧俏资源(大部分的系统中配置的内存都不会是充裕的),
所以也就可能会带来两个问题:
1. 所有模块全部初始化,可能会导致软件启动时间变长;
2. 所有模块全部初始化,可能会导致内存紧张进而导致系统性能降低。

那要如何解决这种问题呢?
1. 在软件启动时,仅仅去初始化必须的模块;
2. 对于优先级不高同时比较耗时但是软件启动后也必须要初始化的,
创建一个低优先级的线程在后台"慢慢的"去运行;
3. 对于一些占用资源较多的模块,采用动态的方法分配和释放资源,
启动模块时分配资源,退出模块时将资源释放出去。

软件开发中的资源控制问题学习相关推荐

  1. 嵌入式蓝牙软件开发中的资源

    1 主要分为:内部资源和外部资源. 内部资源比如前面工程师的技术协助,公司内部文档资料等. 外部资源有芯片代理,以及其它方案公司同行, 行业兴趣群,解决问题的方法途径还是比较多.

  2. 想做C++软件开发工程师,我该如何去学习?

    想做C++软件开发工程师,我该如何去学习? 因为C++是一个兼具性能和抽象模型结合体,除了能够保证性能之外,还能用当今最流行的面向对象编程模型,而且生态系统由于这些年的积累,建设的也非常完善,所以在高 ...

  3. 【转】工作分解结构在软件开发中的应用

    1 概述 通过对项目管理的系统学习,我个人对于工作分解结构在软件中的应用有很深的感触,对于工作分解结构在软件开发中的应用有一些个人的看法和见解. 首先我们看一下项目分解结构的定义,工作分解结构是进行范 ...

  4. 测试自动化金字塔在软件开发中是如何使用的?

    测试自动化金字塔,是一个指南,指导您进行什么类型的测试以及每种测试的数量.测试自动化金字塔有助于创建更高效的测试,并导致向客户发布更可靠的软件. 测试自动化金字塔的好处 测试自动化的大部分好处显而易见 ...

  5. 建模语言UML在软件开发中的应用

      建模语言 UML 在软件开发中的应用 摘要:UML( Unified Modeling Language)是建立系统模型和分析业务处理流程强有力的工具,它能够帮助软件开发人员从不同角度描述系统,使 ...

  6. 软件开发中的10个认知偏差

    最近,在和同事们讨论产品经理职责的时候,聊到了关于产品的定义,如果不能准确定义"产品"的时候,可以考虑其必要条件,即可没有用户的产品肯定是没有意义的.产品有了用户, 必然存在用户与 ...

  7. 人工智能技术在软件开发中的应用

    人工智能技术的不断发展和成熟,使得它在软件开发中的应用越来越广泛.人工智能技术的应用可以帮助软件开发人员提高效率.降低成本.增强软件的功能性和可靠性.在本文中,我们将探讨人工智能技术在软件开发中的应用 ...

  8. 在软件开发中实施人工智能和敏捷管理的9种方法

    来源:mush博客 自1956年年成立以来,人工智能已经彻底改变了企业决策和部署资源的方式. 几十年来,人工智能通过帮助各行各业的企业蓬勃发展,证明了其价值.从汽车制造厂的机器人到预测货币和库存变动到 ...

  9. 低代码/无代码平台在软件开发中的应用

    随着技术的不断发展,软件开发也在不断地进步.低代码/无代码平台已经成为软件开发的一个新的趋势.在这篇文章中,我们将深入探讨低代码/无代码平台在软件开发中的应用,包括它们的优势.如何选择合适的平台以及如 ...

最新文章

  1. 设计模式之简介及其分类
  2. oracle or索引失效_oracle数据库中索引会失效的几种情况
  3. magento app/design/adminhtml/default/default/template/sales/order/view/info.phtml XSS Vul
  4. 八种Docker容器开发模式解析
  5. 新浪微博开发-添加子视图控制器设置颜色
  6. C++ 多态在异常中的使用
  7. 局域网在线监控设备扫描工具V1.0软件说明
  8. 月薪7万,还想着赚“外快”,吃百万回扣, 这名大公司85后员工结局唏嘘
  9. pytorch 中的 split
  10. bzoj 1196: [HNOI2006]公路修建问题(贪心+最小生成树)
  11. inDesign教程,如何将内容与参考线对齐?
  12. scratch做了个病毒大战的游戏,欢迎朋友们试玩,多提意见
  13. 电容单位F法拉、mF毫法、纳法nF、皮法pF之间是如何转换
  14. java.sql.BatchUpdateException: Data truncation: Division by 0
  15. Tryhackme-BurpSuite
  16. 关闭compactos_windows 10 CompactOS最节省空间的安装系统
  17. knife-4j 点击列表出现空白页怎么办?
  18. SAP 未计划交货费-MIRO发票校验
  19. 30天自制操作系统——第0天
  20. 嘚吧嘚java的发展历史

热门文章

  1. 计算机的alu的作用,算术逻辑运算单元(ALU)的基本功能是什么 – 手机爱问
  2. 互联网晚报 | 3月15日 星期二 |​ 特斯拉Model 3高性能版和Model Y长续版再涨价;字节成都成立光合科技公司...
  3. 2021新媒体内容生态数据报告
  4. 一句话证明你是产品经理
  5. 2021抖音电商生态发展报告
  6. 2021年Q1移动互联网行业数据研究报告
  7. esxi 6.7 update 3 3b_污水站运维系统,3大要点让你吃透运维本质
  8. 数据异常HTML,@ Html.DropDownListFor的数据绑定异常
  9. python问题关键词匹配算法_python通过BF算法实现关键词匹配的方法
  10. 电脑闪屏是什么原因_啄木鸟家庭维修|液晶电视闪屏什么原因