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

怎样制作自己的网站ppt免费网站

怎样制作自己的网站,ppt免费网站,创建网站宝典,帮助网站源码单例模式引发的内存泄漏:多年来#xff0c; 使用Plumbr进行性能监控时#xff0c;我遇到了数百个资源泄漏引起的性能问题。 在这篇文章中#xff0c;我想描述一种最简单的方法来清理资源并避免该问题。 首先#xff0c;我以电影播放器​​应用程序为例来描述问题。 这种应… 单例模式引发的内存泄漏: 多年来 使用Plumbr进行性能监控时我遇到了数百个资源泄漏引起的性能问题。 在这篇文章中我想描述一种最简单的方法来清理资源并避免该问题。 首先我以电影播放器​​应用程序为例来描述问题。 这种应用程序的主要功能自然是在播放电影本身。 按照当今的习惯我们不想将整个电影收藏存储在用于播放电影的设备上。 相反我们将电影下载到本地临时文件中然后播放并删除该文件以释放下一个电影的空间。 这种工作流程的幼稚实现如下所示 public class MoviePlayer {private final Catalog catalog new Catalog();public void play(String movieName, String screen) {Movie movie catalog.find(movieName);try {movie.fetch();movie.play(screen);} finally {movie.release();}} }class Catalog {Movie find(String name) {return new Movie(name);} } 如您所见 MoviePlayer类是Catalog类的客户端必须照顾电影播放的整个生命周期。 查找下载播放和删除文件均属于MoviePlayer类的实现。 这是第一个问题如果至少一个这样的客户端是由一些粗心的开发人员编写的他们忘记调用movie.release方法那么下载的文件将保留在本地磁盘上。 因此您播放的每部电影都将添加一个文件并且设备上的磁盘空间最终将被耗尽。 引入其他功能后就会暴露出这种“万事通”代码的第二个问题。 例如假设您需要增加记录实际电影播放时间的可能性。 当前唯一的方法是更改MoviePlayer类。 如果Catalog类有其他客户则每个客户都需要引入更改。 结果 MoviePlayer的每个附加功能都变得越来越大处理越来越多的独立问题。 结果代码最终将难以理解和更改。 考虑到MoviePlayer应该主要只是处理电影的播放所以听起来确实有太多麻烦。 的确让我们尝试将所有这些混乱的内容从MoviePlayer中移出以确保我们拥有一个负责任的班级。 拥有20年历史的命令设计模式最适合手头的任务。 减轻痛苦救援的命令模式 该方法背后的基本思想是首先抽象出因使用案例而异的操作以使其与算法中更稳定的部分区分开。 在我们的情况下这可能涉及电影播放或使用不同的视频编解码器进行重新编码。 因此包括“查找电影下载-执行某些操作-删除本地文件”的无聊步骤的样板将与特定用例隔离。 在我们的示例中我们可以使用以下简单的界面进行操作 interface MovieCommand {void execute(Movie movie); } 上面的更改包括引入一种带有MovieAction类型的附加参数的新方法。 在此方法中将执行整个算法 电影已找到。 电影已下载。 传递给该方法的动作或命令在影片上执行。 现在特定操作是随用例而变化的唯一可变部分。 最后释放电影的文件句柄并执行对临时文件的清理。 现在如果需要以任何方式更改算法我们将只在一个地方进行操作而不会影响仍仅关注其特定动作例如电影播放或编码的任何客户端。 我们的MoviePlayer示例现在很简单 class Catalog {private Movie find(String name) {return new Movie(name);}void withMovie(String movieName, MovieCommand action) {Movie movie find(movieName);try {movie.fetch();action.execute(movie);} finally {movie.release();}} } 该技术非常强大且广泛。 如果您尚未意识到此用途请考虑对关系数据库的JDBC访问。 所有与获取数据库连接准备语句获取结果集以及关闭资源有关的样板文件特别是在Spring Templating进行救援之前都是噩梦般的处理顺序。 同样可以通过使用命令模式从不必要的样板中清除代码并大大简化代码库在自定义代码库中实现不同方面例如安全检查或缓存。 翻译自: https://www.javacodegeeks.com/2016/09/resource-leakages-command-pattern-rescue.html单例模式引发的内存泄漏:
http://www.pierceye.com/news/468180/

相关文章:

  • 电子商务网站建设与管理试卷6平面设计接单兼职
  • 建设手机网站大概要多少钱云南建投二公司官网
  • 公司如何建设网站首页网页设计与网站开发试题答案
  • 中企动力合作网站网站app下载平台怎么做
  • 网站开发专业成功人士重庆邮电大学官网网站
  • 官方网站后台图片下载怎么做网站开发与支付宝端口连接
  • 浏览器怎么打开网站服务器下载在线音乐网站开发摘要
  • 建网站拿到广告吉林整站优化
  • 怎么建站网站清远佛冈住房和城乡建设局网站
  • 领导高度重视门户网站建设广州引流推广公司
  • 公司网站建设吧个好wordpress增加搜索
  • 温州网站推广排名哪家购物网站建设好
  • 宿迁做网站公司哪家好中国建设监理协会化工监理协会网站
  • 网站建设广州天河常州企业自助建站系统
  • 厦门网站建设u贷款在线申请
  • 做肮脏交义的网站南宁住房和城乡建设局网站
  • 办网站需要什么my23777免费域名查询
  • 销售网站开发步骤网站域名到期了怎么办
  • 怎么做注册账号的网站网页打不开视频播放不了是什么问题
  • 江阴市住房和城乡建设局网站免费网页游戏poki
  • 个人网站设计网站建设的基本特点
  • 泉州专业做网站网站被k 原因
  • 18款禁用网站app直播建设部资质网站
  • 免费完整版的网站模板商丘行业网站建设开发公司
  • 网站与微网站区别推广通
  • 京东网站建设的意义wordpress美图
  • 佛山市外贸网站建设公司营销型网站建设 兼职
  • 四川省城乡与建设厅网站中国十大it培训机构排名
  • 国家高新技术企业查询网站汕头整站优化
  • asp网站生成静态在线网站软件免费下载