繁体   English   中英

在文本编辑器显示链中使用双缓冲有何意义?

[英]How much sense does it make to use a double-buffering in a text editor display chain?

好的,我不知道这可能有点愚蠢,但是我想知道双重缓冲文本编辑器是否有任何意义。 我正在考虑将每个字符一个接一个地打印到一个后备缓冲区,或者也许一个字接一个地打印到后备缓冲区,然后使用BitBlt将文本的更新部分显示到屏幕上? 这会好吗? 抱歉,如果这很愚蠢,我将回答这个问题,如果它不符合标准。

此致Devjeet

这实际上取决于程序的结构,但是通常来说以GUI为中心的应用程序(例如您的文本编辑器)可以很好地利用双缓冲来避免那些讨厌的闪烁...

尽可能晚地通过屏幕dc调用BitBlt()(我称其为“实时”)。

我想不出任何现代的OS /窗口系统都可以进行这种内存或帧缓冲区的访问,或者在性能上有所改善。 就文本而言,很早以前就解决了高质量的真型字体渲染问题。 大多数窗口系统(X11 / Quartz / Aero)都实现字体缓存,并使用图形硬件的合成功能。

更为直接的答案是,文本编辑器将大部分时间都花在等待用户输入上。 渲染不太可能成为瓶颈。 FWIW,很高兴您正在考虑此级别的性能。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM