Linux獲取棧空間大小


有時候在Linux寫C++程序處理大量的數據,程序內部需要分配很大的數組來存放一些數據,但有時候分配的數組太大的話運行時會出現段錯誤。這種情況可能是分配的數組大小超過了Linux系統的默認棧空間的大小了,導致棧空間不夠分配,出現錯誤。

  • 查看linux默認棧空間的大小
    通過命令 ulimit -s 查看linux的默認棧空間大小,默認情況下為8192 KB 即8MB。

  • 臨時改變棧空間的大小
    通過命令 ulimit -s 設置大小值臨時改變棧空間大小。例如:ulimit -s 102400,即修改為100MB。

  • 永久修改棧空間大大小。有兩種方法:
    方法一:可以在/etc/rc.local 內加入 ulimit -s 102400 則可以開機就設置棧空間大小,任何用戶啟動的時候都會調用。
    方法二:修改配置文件/etc/security/limits.conf


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM