3.31 日 开发使用canvas性能优化问题的记录和解决

在开发一个矩阵状态显示页面时,使用canvas实现的连线展示导致了浏览器内存升高和性能紊乱。每10秒更新并重绘画布加剧了性能消耗。通过对比数据变化来决定是否重绘,避免不必要的操作,以此优化canvas的性能。今后将更加注重问题的总结和学习。
摘要由CSDN通过智能技术生成

3.31 日 开发问题的记录

好久没有写博客了,之前也没有养成这种好的习惯。现在开始每天记录一下,增加自己的文字梳理和总结能力吧。
今天说一说开发上的遇到的问题,我之前做了一个矩阵状态功能的显示页面。其方式为相应的通道和信号的连线展示关系。我是用canvas实现的,但是此页面如果一直运行的话会导致 浏览器的内存不断升高,产生内存泄漏问题,导致浏览器性能的紊乱,出现连线不显示的情况。查了一些资料,说是canvas自身就是比较消耗性能,因为我要做的是实时监控的,所以每隔10秒,我就会过更新并且重新绘制一下画布。
![矩阵连线页面](https://img-blog.csdnimg.cn/20200331182346459.png?x-oss-
process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3dlaXhpbl80NDY4MTUzMw==,size_16,color_FFFFFF,t_70)

解决方法:
看了有关canvas的优化问题,首先在代码上进行合理的调用,去除无关的重复调用消耗性能,如过存在其静态背景的话可以采用隔屏操作,我这变需要的就是判断每次请求的数据是否一致,一致的话不需要做重绘处理,不一致或者数据发生变化的话做重绘处理,用这种最简单基本的方法来做优化。

总结:下次,学习到的问题及时总结。
ct.width=width; ct.height=height; //重新赋值长宽清空画布 ctx.lineWidth=5; // 线宽 ctx.lineCap="rou

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值