pub struct MmapRaw { /* private fields */ }
Expand description
A handle to a raw memory mapped buffer.
This struct never hands out references to its interior, only raw pointers. This can be helpful when creating shared memory maps between untrusted processes.
Implementations§
source§impl MmapRaw
impl MmapRaw
sourcepub fn map_raw<T: MmapAsRawDesc>(file: T) -> Result<MmapRaw>
pub fn map_raw<T: MmapAsRawDesc>(file: T) -> Result<MmapRaw>
Creates a writeable memory map backed by a file.
This is equivalent to calling MmapOptions::new().map_raw(file)
.
Errors
This method returns an error when the underlying system call fails, which can happen for a variety of reasons, such as when the file is not open with read and write permissions.
sourcepub fn as_ptr(&self) -> *const u8
pub fn as_ptr(&self) -> *const u8
Returns a raw pointer to the memory mapped file.
Before dereferencing this pointer, you have to make sure that the file has not been truncated since the memory map was created. Avoiding this will not introduce memory safety issues in Rust terms, but will cause SIGBUS (or equivalent) signal.
sourcepub fn as_mut_ptr(&self) -> *mut u8
pub fn as_mut_ptr(&self) -> *mut u8
Returns an unsafe mutable pointer to the memory mapped file.
Before dereferencing this pointer, you have to make sure that the file has not been truncated since the memory map was created. Avoiding this will not introduce memory safety issues in Rust terms, but will cause SIGBUS (or equivalent) signal.