pub struct Env(/* private fields */);
Expand description
An Env is an interface used by the rocksdb implementation to access operating system functionality like the filesystem etc. Callers may wish to provide a custom Env object when opening a database to get fine gain control; e.g., to rate limit file system operations.
All Env implementations are safe for concurrent access from multiple threads without any external synchronization.
Note: currently, C API behinds C++ API for various settings.
See also: rocksdb/include/env.h
Implementations§
source§impl Env
impl Env
sourcepub fn mem_env() -> Result<Self, Error>
pub fn mem_env() -> Result<Self, Error>
Returns a new environment that stores its data in memory and delegates all non-file-storage tasks to base_env.
sourcepub fn set_background_threads(&mut self, num_threads: c_int)
pub fn set_background_threads(&mut self, num_threads: c_int)
Sets the number of background worker threads of a specific thread pool for this environment.
LOW
is the default pool.
Default: 1
sourcepub fn set_high_priority_background_threads(&mut self, n: c_int)
pub fn set_high_priority_background_threads(&mut self, n: c_int)
Sets the size of the high priority thread pool that can be used to prevent compactions from stalling memtable flushes.
sourcepub fn set_low_priority_background_threads(&mut self, n: c_int)
pub fn set_low_priority_background_threads(&mut self, n: c_int)
Sets the size of the low priority thread pool that can be used to prevent compactions from stalling memtable flushes.
sourcepub fn set_bottom_priority_background_threads(&mut self, n: c_int)
pub fn set_bottom_priority_background_threads(&mut self, n: c_int)
Sets the size of the bottom priority thread pool that can be used to prevent compactions from stalling memtable flushes.
sourcepub fn join_all_threads(&mut self)
pub fn join_all_threads(&mut self)
Wait for all threads started by StartThread to terminate.
sourcepub fn lower_thread_pool_io_priority(&mut self)
pub fn lower_thread_pool_io_priority(&mut self)
Lowering IO priority for threads from the specified pool.
sourcepub fn lower_high_priority_thread_pool_io_priority(&mut self)
pub fn lower_high_priority_thread_pool_io_priority(&mut self)
Lowering IO priority for high priority thread pool.
sourcepub fn lower_thread_pool_cpu_priority(&mut self)
pub fn lower_thread_pool_cpu_priority(&mut self)
Lowering CPU priority for threads from the specified pool.
sourcepub fn lower_high_priority_thread_pool_cpu_priority(&mut self)
pub fn lower_high_priority_thread_pool_cpu_priority(&mut self)
Lowering CPU priority for high priority thread pool.
Trait Implementations§
Auto Trait Implementations§
impl Freeze for Env
impl RefUnwindSafe for Env
impl Send for Env
impl Sync for Env
impl Unpin for Env
impl UnwindSafe for Env
Blanket Implementations§
source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
source§default unsafe fn clone_to_uninit(&self, dst: *mut T)
default unsafe fn clone_to_uninit(&self, dst: *mut T)
clone_to_uninit
)