Skip to content

Commit ce5918c

Browse files
committed
feat: add shrink() method to Limiter
1 parent f055ee4 commit ce5918c

1 file changed

Lines changed: 12 additions & 0 deletions

File tree

host/src/limiter.rs

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -89,6 +89,18 @@ impl Limiter {
8989
})
9090
}
9191

92+
/// Shrink memory usage.
93+
pub(crate) fn shrink(&self, bytes: usize) -> Result<usize, GrowthError> {
94+
let mut self_guard = self
95+
.memory_reservation
96+
.lock()
97+
.expect("memory reservation lock poisoned");
98+
self_guard.try_shrink(bytes).map_err(|e| {
99+
log::debug!("failed to shrink memory: {e}");
100+
GrowthError(e)
101+
})
102+
}
103+
92104
/// Get current allocation size.
93105
pub(crate) fn size(&self) -> usize {
94106
self.memory_reservation

0 commit comments

Comments
 (0)