是否可以将 QFile::map 与 mmap MAP_POPULATE 标志一起使用?

Is it possible to use QFile::map with mmap MAP_POPULATE flag?

我正在 linux 的应用程序中使用 QFile 映射函数。默认行为当然是 mmap 的默认延迟加载数据。我更喜欢用 mmap MAP_POPULATE 标志映射文件,但在 Qt API 中找不到任何方法。有什么建议么?提前致谢。

使用 QFile::readAll() 即可。

打开文件后,然后映射它,只需调用QFile对象的readAll()函数即可。这将提前读取所有文件。令人惊讶的是,这只做了一次。关闭应用程序后,如果您重新 运行 它,您会发现 readAll() 将在几分之一秒内完成,即使对于非常大的文件也是如此。