当前位置: 首页 > news >正文

便宜高端网站设计推荐个人简历在线制作免费

便宜高端网站设计推荐,个人简历在线制作免费,邢台网络运营中心,phpnow超详细WordPress文章目录 反例应用对象池对象池应用 享元模式#xff08;flyweight#xff09;是一种进行性能优化的模式#xff0c;通过共享技术来支持大量细粒度的对象 如果系统中创建了大量相似的对象#xff0c;我们就可以通过享元模式节省内存 反例 服装厂生产了一堆衣服#xff… 文章目录 反例应用对象池对象池应用 享元模式flyweight是一种进行性能优化的模式通过共享技术来支持大量细粒度的对象 如果系统中创建了大量相似的对象我们就可以通过享元模式节省内存 反例 服装厂生产了一堆衣服需要模特拍照片假设有 100 个衣服被生产就 new 了 100 个模特出来给衣服拍照片显然内存要爆炸 这时我们把模特抽象出来通过 更新他身上的衣服执行拍照方法就避免了过多的内存消耗这个步骤将对象的属性划分成了内部状态和外部状态每个对象都有拍照这个内部属性穿的衣服、性别都是外部属性减少了共享对象的数量 内部状态 存储在对象内部内部状态 可以被一些对象共享内部状态 独立于场景一般不会改变外部状态 取决于场景根据场景变化 虽然修改外部状态也需要花费一定时间但总比新建一个对象要好所以这是一种时间换空间的优化方式上面的例子中衣服就是外部属性拍照就是内部属性 应用 上面的修改是基于享元模式的一个小改动完整的享元模式还应该包含一个享元模式对象工厂下面是 Unity 中一个常见的情景 正常来说我们用 new 创建 100 个粒子性能可能不受影响但 10000 个有可能就得爆炸了 看下面的代码理解享元模式的好处在哪 using System; using System.Collections.Generic;// 享元接口 interface IParticle {void Move(int x, int y);void Draw(); }// 具体享元类 class Particle : IParticle {private string color;public Particle(string color){this.color color;}public void Move(int x, int y){Console.WriteLine($Moving particle to ({x}, {y}));}public void Draw(){Console.WriteLine($Drawing particle with color: {color});} }// 享元工厂类 class ParticleFactory {private Dictionarystring, IParticle particles new Dictionarystring, IParticle();public IParticle GetParticle(string color){if (particles.ContainsKey(color)){return particles[color];}else{IParticle particle new Particle(color);particles.Add(color, particle);return particle;}} }// 游戏场景类 class GameScene {private ParticleFactory particleFactory new ParticleFactory();private ListIParticle particles new ListIParticle();public void AddParticle(string color, int x, int y){IParticle particle particleFactory.GetParticle(color);particle.Move(x, y);particles.Add(particle);}public void RenderScene(){foreach (var particle in particles){particle.Draw();}} }// 测试 class Program {static void Main(string[] args){GameScene scene new GameScene();// 添加红色粒子到不同位置scene.AddParticle(red, 10, 20);scene.AddParticle(red, 30, 40);scene.AddParticle(red, 50, 60);// 添加蓝色粒子到不同位置scene.AddParticle(blue, 70, 80);scene.AddParticle(blue, 90, 100);// 渲染场景scene.RenderScene();} }对象池 对象池 维护一个 装有空闲对象 的池子如果需要对象的时候不是直接 new而是从对象池里获取如果池里没有则创建一个新的 原理很好理解我们班人手买一本 C Primer Plus 可能不是那么划算大部分时间都是闲置的如果我们创建一个池需要看的就去拿看完了就还回来不够了马上从图书馆借一本出来这就很节约了 HTTP 连接 和 数据库连接池 都是对象池技术的应用 对象池应用 我们举个例子某某地图 APP 上有很多个标记 ABCDEFG如果我们搜索兰州拉面就会弹出来 4 个附近的兰州拉面标记这时候如果我们换个地方搜索弹出来了 6 个兰州拉面标记 销毁前面的兰州拉面标记重新创建利用对象池技术前面的 4 个标记放回池里再创建 2 个出来用 再看看上面 Unity 的例子是否能理解为什么 享元模式 对象池技术在特殊的场景下是优秀的
http://www.pierceye.com/news/241951/

相关文章:

  • 有做浏览单的网站jsp网站开发过程
  • 做网站用小型机或服务器wordpress 喜欢
  • 网站建设与维护采访稿中国建设银行电脑版
  • 企业网站建设变相收取等级保护费手游平台十大排名
  • 影响力网站建设恩施网站开发
  • 美术馆网站建设总体要求承德信息发布微信平台
  • 同城便民网站开发为什么企业需要建设网站
  • 网站制作推荐新鸿儒黄山游玩攻略及费用
  • 二手车网站的建设app与微网站的区别是什么
  • 深圳做棋牌网站建设哪家便宜网站域名更改后怎么做映射
  • 长沙网站seo公司知名网站设计服务商
  • 网站建设会议讲话lol视频网站源码
  • 深圳市哪些公司做网站好wordpress小插件下载地址
  • 佛山优化网站公司网站策划书格式及范文
  • 上海网站建设公司秦皇岛网站seo
  • 外贸网站推广 sit淮安市广德育建设网站
  • 准备建网站该怎么做淘宝店铺
  • 1688外贸网站国外购物网站哪个最好
  • 怎么修改网站关键词网站建设的地方
  • 江苏运营网站建设业务淘宝推广引流方法有哪些
  • 快手评论点赞网站建设专业分站微信小程序开发者中心
  • mvc5网站开发之六 管理员p2网站模板
  • 黄页网站推广公司网站建设公司包括哪些内容
  • 网站平台建设目标修改网站j广州网络公司
  • 网站制作商城正规免费发布信息网站
  • 建设企业网站的人员组成莱芜网站建设费用
  • 长春建站网站西宁做网站君博专注
  • 学校实验室网站建设现状怎么做网站 ppt
  • 网站建设骗子公司新开传奇网站发布网
  • 智能模板网站建设方案深圳团购网站设计