Struct jemalloc_ctl::thread::allocatedp
source · [−]pub struct allocatedp;Expand description
Access to the total number of bytes allocated by the current thread.
Unlike crate::stats::allocated, the value returned by this type is not the
number of bytes currently allocated, but rather the number of bytes
that have ever been allocated by this thread.
The read method doesn’t return the value directly, but actually a
pointer to the value. This allows for very fast repeated lookup, since
there is no function call overhead. The pointer type cannot be sent to
other threads, but allocated::read can be called on different threads
and will return the appropriate pointer for each of them.
Example
use jemalloc_ctl::thread;
let allocated = thread::allocatedp::mib().unwrap();
let allocated = allocated.read().unwrap();
let a = allocated.get();
let buf = vec![0; 1024 * 1024];
let b = allocated.get();
drop( buf);
let c = allocated.get();
assert!(a < b);
assert_eq!(b, c);Implementations
sourceimpl allocatedp
impl allocatedp
sourcepub fn mib() -> Result<allocatedp_mib>
pub fn mib() -> Result<allocatedp_mib>
Returns Management Information Base (MIB)
This value can be used to access the key without doing string lookup.
sourcepub fn name() -> &'static Name
pub fn name() -> &'static Name
Key crate::keys::Name.
sourceimpl allocatedp
impl allocatedp
sourcepub fn read() -> Result<ThreadLocal<u64>>
pub fn read() -> Result<ThreadLocal<u64>>
Reads value using string API.
Auto Trait Implementations
impl RefUnwindSafe for allocatedp
impl Send for allocatedp
impl Sync for allocatedp
impl Unpin for allocatedp
impl UnwindSafe for allocatedp
Blanket Implementations
sourceimpl<T> BorrowMut<T> for T where
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized,
const: unstable · sourcefn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more