一尘不染

如何以编程方式清除Linux系统上C ++中的文件系统内存缓存?

linux

我正在用C ++写一个基准测试工具,我想在两次实验之间清除文件系统内存缓存。我知道以下控制台命令:

sync
echo 3 > /proc/sys/vm/drop_caches

我的问题是如何直接在C ++中以编程方式执行此操作?

任何帮助表示赞赏!


阅读 246

收藏
2020-06-07

共1个答案

一尘不染

只需写:

sync();

std::ofstream ofs("/proc/sys/vm/drop_caches");
ofs << "3" << std::endl;
2020-06-07