rust-vmm / vmm-sys-util

Helpers and utilities used by multiple rust-vmm components and VMMs

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Extend `TempFile`

JonathanWoollett-Light opened this issue · comments

A common use for TempFile is to get a unique path where a file can be created, modified and removed.

The current approach to this:

let file = TempFile::new();
let path = file.as_path();
drop(file);
// Use the path

This is awkward and introduces a race condition in that another call to mkstemp in another test after this test deletes the file could return the same path.

it would be useful to offer a better mechanism to support this.

Hmm, interesting, I was thinking that creating a file should be more of a rare pattern, and typically you would work with references. I was expecting this pattern to only be used in things like main.rs. What is the functionality for which this is used?