我正在使用Ubuntu 11.04。如何找出進程的最大調用堆棧大小以及堆棧的每個幀的大小?如何找到最大堆棧大小?
24
A
回答
19
您可以使用getrlimit
查詢最大進程和堆棧大小。堆棧幀沒有固定的大小;它取決於每個幀需要多少局部數據(即局部變量)。
要在命令行上執行此操作,可以使用ulimit。
如果你想爲正在運行的進程讀取這些值,我不知道這是否任何工具,但它很容易查詢/ proc文件系統:
cat /proc/<pid>/limits
3
23
快速谷歌搜索應該顯示some information on this subject。以KB爲單位
> ulimit -a # shows the current stack size
+1
當然,快速的谷歌搜索現在提供了這個頁面。 – gerardw
13
最大堆棧大小:
ulimit -s
相關問題
- 1. 達到的最大堆棧大小
- 2. 最大線程堆棧大小.NET?
- 3. Android堆棧大小
- 4. Linux堆棧大小
- 5. 如何在運行後找到Java堆的最大大小?
- 6. 如何捕捉「超出最大調用堆棧大小」錯誤?
- 7. 如何設置飛鏢vm的最大堆棧大小
- 8. 如何避免「超出最大調用堆棧大小」異常?
- 9. 如何在.net中查找當前線程的最大堆棧大小?
- 10. 堆棧= java.lang.StackOverflowError的:堆棧大小8MB
- 11. 從Angular 2升級到4最大調用堆棧大小
- 12. iphone os支持的最大堆大小和堆棧大小是多少?
- 13. 如何在MacOS X上找到堆棧的基址和大小?
- 14. 查找堆棧中的最大值和最小值
- 15. 如何找到變量的最大數量在堆棧
- 16. 如何找到rrdtool的「錯誤:RPN最終堆棧大小!= 1」的原因?
- 17. 遞歸 - 調用堆棧失敗測試的最大堆棧大小
- 18. 如何用runhaskell增加堆棧大小?
- 19. 如何增加Java堆棧大小?
- 20. 增加AsyncTask堆棧大小?
- 21. LINQ堆棧大小問題
- 22. Android後退堆棧大小
- 23. 增加堆棧大小c#
- 24. 增加堆棧大小
- 25. 遞歸堆棧大小?
- 26. 遞歸堆棧大小
- 27. 可變堆棧大小
- 28. Nexus的最大堆大小?
- 29. 如果知道最大堆大小,如何計算最大對象大小?
- 30. 如何找出配置的最大java堆大小?
我收到未找到錯誤的命令。我需要爲這個命令安裝什麼軟件包? – Bruce
這是一個C API調用,而不是命令行工具。 –
他們需要擁有一些適合的起始尺寸?編譯器是否事先計算堆棧幀的大小(考慮到所有局部變量),然後分配幀? – Bruce