xref: /DragonOS/user/apps/test-blockcache/src/main.rs (revision eb49bb993a39964f92494ec3effafed3fb9adfd8)
1*eb49bb99S曾俊 use std::fs::File;
2*eb49bb99S曾俊 use std::io::{BufReader, Read, Seek, SeekFrom, Write};
3*eb49bb99S曾俊 
main() -> std::io::Result<()>4*eb49bb99S曾俊 fn main() -> std::io::Result<()> {
5*eb49bb99S曾俊     let file_size_bytes: u64 = 512;
6*eb49bb99S曾俊     let mut file = File::create("large_file")?;
7*eb49bb99S曾俊     file.seek(std::io::SeekFrom::Start(file_size_bytes - 1))?;
8*eb49bb99S曾俊     file.write_all(&[0])?;
9*eb49bb99S曾俊     let mut file = File::open("large_file")?;
10*eb49bb99S曾俊     // let mut reader = BufReader::new(file);
11*eb49bb99S曾俊     let mut buffer = [0; 512];
12*eb49bb99S曾俊     let mut count = 0;
13*eb49bb99S曾俊     loop {
14*eb49bb99S曾俊         count += 1;
15*eb49bb99S曾俊         file.seek(SeekFrom::Start(0))?;
16*eb49bb99S曾俊         let bytes_read = file.read_exact(&mut buffer)?;
17*eb49bb99S曾俊         if count > 10000 {
18*eb49bb99S曾俊             break;
19*eb49bb99S曾俊         }
20*eb49bb99S曾俊     }
21*eb49bb99S曾俊     Ok(())
22*eb49bb99S曾俊 }
23