首页 文章 精选 留言 我的
优秀的个人博客,低调大师

微信关注我们

原文链接:https://yq.aliyun.com/articles/754126

转载内容版权归作者及来源网站所有!

低调大师中文资讯倾力打造互联网数据资讯、行业资源、电子商务、移动互联网、网络营销平台。持续更新报道IT业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。

常用的软件技术思想-池化技术等

池化技术 实际案例今天去公司食堂吃早点,排了一队人,先是包子馒头,然后是韭菜盒子,各种饼,最后是喝的,比如小米粥,黑米粥,豆浆等,发现队伍阻塞在最后那一段(小米粥,黑米粥,豆浆)了,这个说要黑米粥,阿姨忙不迭地去打黑米粥,那个说要小米粥,阿姨赶紧去打小米粥。。。阿姨已经没有功夫来决定打哪个了。那么我们看看另外一种情况,阿姨提前做好囤货的工作,比如小米粥,黑米粥,豆浆各打10碗放着,谁要谁自己拿。阿姨的工作就不用围着顾客团团转了,而是看哪个少了,就打哪个,比如发现黑米粥还剩下3碗了,那么就多打黑米粥。 简单来说就是提前保存大量的资源,以备不时之需 核心是复用 池化技术作用 复用相同的资源,减少浪费,减少新建和销毁的成本; 减少单独管理的成本,统一交由"池"; 集中管理,减少"碎片"; 提高系统响应速度,因为池中有现成的资源,不用重新去创建; 使用池化技术的例子 java线程池 java中所有的池化技术都有一个好处,就是通过复用池中的对象,降低系统资源消耗。设想一下如果我们有n多个子任务需要执行,如果我们为每个子任务都创建一个执行线程,而创建线程的过程是需要一定的系统消耗的,最后肯定会拖慢...

设计模式-观察者模式

我的理解 很久之前有个老师给我们讲观察者模式时,举了一个例子:妈妈照顾婴儿,他们在不同的房间,婴儿在婴儿房间A,妈妈在书房M,为了保证婴儿睡醒之后能及时得到照顾,妈妈每隔10分钟就去房间A瞧瞧,看看婴儿是否醒了.妈妈为了防止忘记,给自己定了一个闹钟,每隔10分钟响一次. while (10分钟之后) { watchBaby();//检查婴儿是否睡醒 } 一段时间之后,妈妈觉得很累,而且效率很低,因为很多次妈妈去照看婴儿时,发现婴儿在睡觉啥事也没有. 后来,妈妈发现了一个好方法,在婴儿身上寄一个铃铛,婴儿只要一动,铃铛就会响,妈妈就能听到.这样妈妈就可以安心工作了,只要听到铃铛响就跑过去照看下. 关系图: 其实上面的例子涉及到两种模式: 妈妈每隔10分钟主动去查看 是轮询模式; 妈妈不用主动去检查,婴儿醒了,妈妈就会听到铃铛, 是观察者模式 那种模式效率更高呢?一般情况下,观察者模式效率更高,轮询,每隔一段时间去查看,浪费了资源. 观察者模式的角色 有如下角色:观察者,被观察者,事件,有如下操作:注册,通知 观察者 案例中的妈妈就是观察者,她观察婴儿,看它醒了没有,有什么需求 被观察者 ...

相关文章

发表评论

资源下载

更多资源
优质分享App

优质分享App

近一个月的开发和优化,本站点的第一个app全新上线。该app采用极致压缩,本体才4.36MB。系统里面做了大量数据访问、缓存优化。方便用户在手机上查看文章。后续会推出HarmonyOS的适配版本。

腾讯云软件源

腾讯云软件源

为解决软件依赖安装时官方源访问速度慢的问题,腾讯云为一些软件搭建了缓存服务。您可以通过使用腾讯云软件源站来提升依赖包的安装速度。为了方便用户自由搭建服务架构,目前腾讯云软件源站支持公网访问和内网访问。

Spring

Spring

Spring框架(Spring Framework)是由Rod Johnson于2002年提出的开源Java企业级应用框架,旨在通过使用JavaBean替代传统EJB实现方式降低企业级编程开发的复杂性。该框架基于简单性、可测试性和松耦合性设计理念,提供核心容器、应用上下文、数据访问集成等模块,支持整合Hibernate、Struts等第三方框架,其适用范围不仅限于服务器端开发,绝大多数Java应用均可从中受益。

Sublime Text

Sublime Text

Sublime Text具有漂亮的用户界面和强大的功能,例如代码缩略图,Python的插件,代码段等。还可自定义键绑定,菜单和工具栏。Sublime Text 的主要功能包括:拼写检查,书签,完整的 Python API , Goto 功能,即时项目切换,多选择,多窗口等等。Sublime Text 是一个跨平台的编辑器,同时支持Windows、Linux、Mac OS X等操作系统。