tauri_plugin_system_info/commands/
memory.rs

1use crate::{model::MemoryInfo, utils::SysInfoState};
2
3#[tauri::command]
4pub fn total_memory(state: tauri::State<'_, SysInfoState>) -> Result<u64, String> {
5    Ok(state.sysinfo.lock().unwrap().total_memory())
6}
7
8#[tauri::command]
9pub fn used_memory(state: tauri::State<'_, SysInfoState>) -> Result<u64, String> {
10    Ok(state.sysinfo.lock().unwrap().used_memory())
11}
12
13#[tauri::command]
14pub fn total_swap(state: tauri::State<'_, SysInfoState>) -> Result<u64, String> {
15    Ok(state.sysinfo.lock().unwrap().total_swap())
16}
17
18#[tauri::command]
19pub fn used_swap(state: tauri::State<'_, SysInfoState>) -> Result<u64, String> {
20    Ok(state.sysinfo.lock().unwrap().used_swap())
21}
22
23#[tauri::command]
24pub fn memory_info(state: tauri::State<'_, SysInfoState>) -> Result<MemoryInfo, String> {
25    let total_memory = state.sysinfo.lock().unwrap().total_memory();
26    let used_memory = state.sysinfo.lock().unwrap().used_memory();
27    let total_swap = state.sysinfo.lock().unwrap().total_swap();
28    let used_swap = state.sysinfo.lock().unwrap().used_swap();
29    Ok(MemoryInfo {
30        total_memory,
31        used_memory,
32        total_swap,
33        used_swap,
34    })
35}