欢迎光临散文网 会员登陆 & 注册

《游戏编程模式》笔记——双缓冲模式

2023-09-12 04:16 作者:黑白色的枫  | 我要投稿

什么是双缓冲模式

双缓冲模式顾名思义有两个缓冲实例,一个当前缓冲实例,一个下一缓冲实例。

在使用时,使用当前缓冲实例,同时生成下一缓冲实例,当下一缓冲实例准备完毕后与当前缓冲进行交换。

为什么要这么做呢

使用双缓冲模式,是希望当前缓冲一定是一个准备好的数据,并且不会再改变,在使用时不必担心当前缓冲因为被外部改变而出现一些异常情况。

注意

交换是需要时间的,这个操作必需是原子级的,通常只是修改指针或者引用,交换时间长于修改时间的话将毫无助益。

我们拥有两个缓冲,也就是双倍的内存使用,甚至可能更多,这取决与交换时是否重复使用当前状态,还是创建新的实例。


参考

《游戏编程模式》

《游戏编程模式》笔记——双缓冲模式的评论 (共 条)

分享到微博请遵守国家法律