Crate app_memory_usage_fetcher

Crate app_memory_usage_fetcher 

Source
Expand description

Build Lint Documentation Crates.io Version Socket.dev

§Application Memory Usage Fetcher

A super simple crate which queries the supported operating system for the number of bytes used. For Unix-like systems, rusage.ru_maxrss is used. If your desired operating system isn’t supported, please file an issue. Additionally, there are helper functions which return the value as Kilo-/Mega-/Giga-/Tera- bytes where the values are based on 1024 bytes = 1 kilobyte.

This crate was created after trying to find this functionality from an existing crate, and instead I found instances of people asking for it. So I decided to make it. This can be helpful, such as trying to see if code changes result in less memory usage, for example.

Operating Systems:

  • Testing: Linux, macOS, FreeBSD, Windows
  • Untested: AIX, Android, DragonFly BSD, NetBSD, OpenBSD
  • Unsupported: Haiku, Solaris, Wasi

Unsupported operating systems fail gracefully with a reported usage of None and a compiler warning.

Functions§

get_memory_usage_bytes
Application memory usage in bytes
get_memory_usage_gbytes
Application memory usage in gigabytes (GiB)
get_memory_usage_kbytes
Application memory usage in kilobytes (KiB)
get_memory_usage_mbytes
Application memory usage in megabytes (MiB)
get_memory_usage_string
Application memory usage with unit
get_memory_usage_tbytes
Application memory usage in terabytes (TiB)