下午好,我们正在使用Windows和Linux的内存映射文件API构建一个Windows/LINUX重复数据删除程序的原型。我们的重复数据删除程序首先对要删除重复数据的所有数据库记录进行顺序扫描。因此,在对要进行重复数据删除的数据库记录进行初始顺序扫描期间,我们将标志FILE_FLAG_SEQUENTIAL_SCAN传递给Windows API CreateFile。完成重复数据消除过程的第一部分后,我们尝试使用Windows内存映射API随机访问数据。此时,使用Windows C++ API,是否可以动态切换到FILE_FLAG_RANDOM_ACCESS模式?
In Linux, we a
在执行此操作之后:
use std::sync::Arc;
use std::time::Instant;
fn main() {
let cap = 100000000;
let b0 = vec![0; cap];
let now = Instant::now();
Arc::new(b0);
println!("T0: {:?}", now.elapsed());
let c0 = vec![0; cap];
let _ = c0.clone(); // <- this makes it slow
le