Tie :: File是否懒得加载文件?

Geo*_*Geo 3 arrays perl tie

我打算编写一个简单的文本查看器,我希望能够处理非常大的文件.我正在考虑使用Tie::File这个,并对线条进行分页.这是懒惰加载线条,还是一次加载所有线条?

bru*_*nov 8

它不会加载整个文件.从文档:

该文件未加载到内存中,因此即使对于巨大的文件也是如此.

  • 但要找到第1830234行,它必须读取整个文件直到那一点(虽然不是全部进入内存) (2认同)

Iva*_*uev 6

据我所知,它的源代码只在内存中存储使用过的行.是的,它仅在需要时加载数据.

您可以使用memory参数限制已用内存量.

它还跟踪文件中所有行的偏移量以优化磁盘访问.