ErrorKind::OutOfMemory
RustERRORCommonMemory
Out of memory
Quick Answer
Reduce allocation size; stream data instead of loading entirely into memory.
What this means
The allocator could not satisfy a memory request. Rare in Rust but returned by some OS-level I/O operations.
Why it happens
- 1Allocating a very large Vec or String
- 2Memory fragmentation under long-running process
- 3OS memory limit (ulimit -v)
Fix
Stream large files
Stream large files
use std::io::{BufReader, Read};
let f = std::fs::File::open("large.bin")?;
let mut reader = BufReader::new(f);
let mut chunk = [0u8; 8192];
while reader.read(&mut chunk)? > 0 { /* process chunk */ }Why this works
BufReader processes data in fixed-size chunks, keeping memory usage constant.
Code examples
Riskrust
let v = vec![0u8; usize::MAX]; // likely OOM
Same error in other languages
Sources
Official documentation ↗
Rust std::io
Content generated with AI assistance and reviewed for accuracy. Found an error? hello@errcodes.dev