一尘不染

如何找到最大堆栈大小?

linux

我正在使用Ubuntu 11.04。如何找出进程的最大调用堆栈大小以及堆栈中每个帧的大小?


阅读 411

收藏
2020-06-03

共1个答案

一尘不染

您可以使用查询最大进程和堆栈大小getrlimit。堆栈框架没有固定的尺寸。它取决于每个帧需要多少本地数据(即本地变量)。

要在命令行上执行此操作,可以使用ulimit。

如果要为正在运行的进程读取这些值,我不知道执行此操作的任何工具,但是查询/ proc文件系统很容易:

cat /proc/<pid>/limits
2020-06-03