Struct tikv_jemalloc_ctl::thread::allocatedp [−][src]
Access to the total number of bytes allocated by the current thread.
Unlike [::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 tikv_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
impl allocatedp
[src]
pub fn mib() -> Result<allocatedp_mib>
[src]
Returns Management Information Base (MIB)
This value can be used to access the key without doing string lookup.
pub fn name() -> &'static Name
[src]
Key [::keys::Name
].
impl allocatedp
[src]
pub fn read() -> Result<ThreadLocal<u64>>
[src]
Reads value using string API.
Auto Trait Implementations
Blanket Implementations
impl<T> Any for T where
T: 'static + ?Sized,
[src]
T: 'static + ?Sized,
impl<T> Borrow<T> for T where
T: ?Sized,
[src]
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized,
[src]
T: ?Sized,
pub fn borrow_mut(&mut self) -> &mut T
[src]
impl<T> From<T> for T
[src]
impl<T, U> Into<U> for T where
U: From<T>,
[src]
U: From<T>,
impl<T, U> TryFrom<U> for T where
U: Into<T>,
[src]
U: Into<T>,
type Error = Infallible
The type returned in the event of a conversion error.
pub fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>
[src]
impl<T, U> TryInto<U> for T where
U: TryFrom<T>,
[src]
U: TryFrom<T>,