windows - 自定义预取

标签 windows linux file filesystems operating-system

任何可移植的或特定于 NTLinux 的编程技术可以更快地加载大量大文件?我追求的是“提前”,先验,无论你喜欢怎么调用它,我都可以在一个问题的代码中控制两个操作系统的机制。

每个文件都必须完整处理,即完整的大小和内容的顺序。目的是加快一些批处理文件的处理速度。

最佳答案

我不知道 NT,但 Linux 上的一个选项是使用 madvise在您实际需要下一个文件之前不久使用 MADV_WILLNEED 标志以尽早开始读取它。

或者,一个更便携的选择是简单地在缓冲区处理线程之外的单独线程中手动执行预读 - 即,读入数据以填充线程 A 中的 X MB 缓冲区,尽可能快地处理它在线程 B 中。

关于windows - 自定义预取,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1562581/

相关文章:

c - C语言读写大文件的有效方法

php - 随机播放并显示 .txt 文件的内容

php - 将标识符嵌入可执行文件以供下载

linux - yii2 : use fxp assets plugin or asset-packagist?

c++ - POSIX regex.h 是否提供 unicode 或基本上非 ascii 字符?

python - apt-get/usr/bin/datetime.so 错误的 ELF 类

C 段错误

python - 如何从 Windows 命令行运行 python 文件 (.py) 而不必先键入 python?

windows - 使用 Windows 资源管理器在源目录中启动 R

linux - 如何在 bash 中使用 kill SIGUSR2?