canvas 的绘图模式 retained-mode(保存模式) 和 immediate-mode (立即模式)

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/cvper/article/details/86568245

(canvas 使用的模式是   immediate 模式);

一、retained-mode 和 immediate-mode  两种不同的绘图模式

绘图模式的话,有两种(目前我了解到的只有这两个),第一种是 retained-mode ,   第二种是 immediate-mode ;

从名字上我们大概就能知道这两种模式的差别了,我们看看中文,

 retained-mode  保存模式 / 保留模式                     immediate-mode  立即模式 / 即时模式

我们来看个小例子:

假设我们现在需要一个数字 2  , 然后我又需要两个数字 20  ,再者我们需要数字 201 ,最后我们需要数字 2019;

我们会怎么做呢,先拿出一张纸,写下一个数字2,然后在 2 后面写下 0,而后在 0 后面写下 1,最后在 1 后面写下 9;

这样我们就得到了 2019  ;  这种模式就是retained 模式,即保存模式;

或者我们先拿出一张纸写下 2 ,然后再拿出一张纸 写下 20  ,而后拿出一张纸写下 201 ,最后再拿出一张纸写下 2019;

这种模式就是 立即模式;

保存模式会在内存中保存状态,当有需要改变的时候,执行的是改变的处理,也就是说前后不改变的地方不会变化;

但是立即模式不是这样,立即模式会每次都重新绘制所有的元素,不管这个对象改变的是一点点还是两点点,

也就是说不会像保存模式那样,占用过高的内存资源,以上简单对比就能初步了解两种不同的模式了;

猜你喜欢

转载自blog.csdn.net/cvper/article/details/86568245
今日推荐