pub struct ResourceManager { /* private fields */ }Expand description
Resource manager for edge devices
Implementations§
Source§impl ResourceManager
impl ResourceManager
Sourcepub fn new(constraints: ResourceConstraints) -> Result<Self>
pub fn new(constraints: ResourceConstraints) -> Result<Self>
Create new resource manager
Sourcepub fn can_start_operation(&self) -> Result<()>
pub fn can_start_operation(&self) -> Result<()>
Check if operation can be started
Sourcepub fn start_operation(&self) -> Result<OperationGuard>
pub fn start_operation(&self) -> Result<OperationGuard>
Start an operation
Sourcepub fn record_failure(&self)
pub fn record_failure(&self)
Record operation failure
Sourcepub fn allocate_memory(&self, bytes: usize) -> Result<MemoryGuard>
pub fn allocate_memory(&self, bytes: usize) -> Result<MemoryGuard>
Allocate memory
Sourcepub fn allocate_storage(&self, bytes: usize) -> Result<StorageGuard>
pub fn allocate_storage(&self, bytes: usize) -> Result<StorageGuard>
Allocate storage
Sourcepub fn record_cpu_sample(&self, cpu_percent: f64)
pub fn record_cpu_sample(&self, cpu_percent: f64)
Record CPU sample
Sourcepub fn current_cpu(&self) -> f64
pub fn current_cpu(&self) -> f64
Get current CPU usage (averaged over recent samples)
Sourcepub fn is_cpu_overloaded(&self) -> bool
pub fn is_cpu_overloaded(&self) -> bool
Check if CPU is overloaded
Sourcepub fn metrics(&self) -> ResourceMetrics
pub fn metrics(&self) -> ResourceMetrics
Get current metrics
Sourcepub fn constraints(&self) -> &ResourceConstraints
pub fn constraints(&self) -> &ResourceConstraints
Get constraints
Sourcepub fn reset_metrics(&self)
pub fn reset_metrics(&self)
Reset metrics
Sourcepub fn health_check(&self) -> HealthStatus
pub fn health_check(&self) -> HealthStatus
Check overall health
Auto Trait Implementations§
impl Freeze for ResourceManager
impl !RefUnwindSafe for ResourceManager
impl Send for ResourceManager
impl Sync for ResourceManager
impl Unpin for ResourceManager
impl UnsafeUnpin for ResourceManager
impl !UnwindSafe for ResourceManager
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
Mutably borrows from an owned value. Read more