test.cpp
macOS Sierra で次の C++ コードをコンパイルして実行しました。
#include <iostream>
#include <sys/resource.h>
using namespace std;
int main() {
int a = 1;
struct rusage r_usage;
getrusage(RUSAGE_SELF, &r_usage);
cout << "Memory usage = " << r_usage.ru_maxrss << endl;
int b = 2;
return 0;
}
それから得た:
➜ Desktop git:(master) ✗ ./test
Memory usage = 663552
次に、単位ru_maxrss
がキロバイトであることを発見し たので、プログラムは663552 キロバイトを使用しましたか? しかし、整数を作成しただけです。
別の質問は次のとおりru_maxrss
ですint b = 2
。または、行呼び出しの前にメモリ使用量をカウントするだけru_maxrss
です。