【发布时间】:2012-05-13 17:45:58
【问题描述】:
在实现通用文本编辑器时(例如,我的意思是通用的意思是它不必能够处理大文件(超过 100-200 MB(这仍然很多,并且是更像是“一般情况”的极端示例)),仅将文本存储在一个连续的长缓冲区中是不可行的,因为插入/删除会降低性能。
虽然有很多方法可以解决这个问题,但它们都围绕着这样一个事实,即您必须将文本分成块,所以我的问题是:考虑到当今的计算机能力,最佳的块大小是多少?文本缓冲区的实际大小实际上开始变得太大而无法存储在简单的连续缓冲区中?现代计算机在移动大块字节方面有多快? (为了清楚起见,我们只说不能使用间隙缓冲区,每个块将是一个简单的连续数组。)
【问题讨论】:
标签: performance text data-structures x86 buffer