1. 程式人生 > 其它 >獲取記憶體_如何獲取一個程序所佔用的記憶體

獲取記憶體_如何獲取一個程序所佔用的記憶體

技術標籤:獲取記憶體

推薦觀看:

BATJ面試官最喜歡問的:多執行緒、執行緒併發面試題詳解(volatile+ThreadLocal+Sleep)_嗶哩嗶哩 (゜-゜)つロ 乾杯~-bilibili​www.bilibili.com b96247c117d56a76a341ad09c31c2c77.png

通過 ps 可以獲知一個程序所佔用的記憶體

$ ps -O rss -p 3506
  PID   RSS S TTY          TIME COMMAND
 3506  6984 S pts/1    00:00:00 vim

如果要監控記憶體,肯定使用對程序萬能的命令 pidstat (PS: 這名字一聽就知道是幹嘛的)

# -r 顯示記憶體資訊
# -p 指定 pid
# 1: 每個一秒列印一次
$ pidstat -r -p 3506 1
Linux 3.10.0-957.21.3.el7.x86_64 (shanyue)      11/04/19        _x86_64_        (2 CPU)

20:47:35      UID       PID  minflt/s  majflt/s     VSZ    RSS   %MEM  Command
20:47:36        0      3506      0.00      0.00  139940   6984   0.18  vim
20:47:37        0      3506      0.00      0.00  139940   6984   0.18  vim
20:47:38        0      3506      0.00      0.00  139940   6984   0.18  vim
20:47:39        0      3506      0.00      0.00  139940   6984   0.18  vim
20:47:40        0      3506      0.00      0.00  139940   6984   0.18  vim
20:47:41        0      3506      0.00      0.00  139940   6984   0.18  vim

pidstat 是屬於 sysstat 下的 linux 效能工具,但在 mac 中,如何定位記憶體的變化?此時可以使用萬能的 top/htop

$ htop -p 31796

64c17f4b289fd06277f06bbaf2907995.png

總結

簡而言之,有以下三個命令

  1. pidstat -r
  2. htop/top -p
  3. ps -O rss -p
原文連結:如何獲取一個程序所佔用的記憶體 - 掘金