c++线程数量的限制
生活随笔
收集整理的這篇文章主要介紹了
c++线程数量的限制
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
C++線程數量的限制
- 限制
- 修改限制
限制
線程的數量取決于線程棧空間的大小(可以使用ulimit -s查看棧空間大小)
132位Linux下(可以使用getconf LONG_BIT查看當前CPU運行在多少位的模式下),用戶空間是3G,因此可創建的線程數量為3G/stack_size,但是理論上除了棧空間每個線程還有線程控制塊的開銷,所以實際值會小一些
修改限制
?使用ulimit -s 新棧空間大小修改默認棧空間大小
1.可以在/etc/rc.local 內 加入 ulimit -s 新棧空間大小 則可以開機就設置棧空間大小
?通過/etc/security/limits.conf 改變棧空間大小: # #添加下列行 * soft stack 新棧空間大小 重新登錄,執行ulimit -s 即可看到改為新棧空間大小
ulimit命令只對當前終端生效。如果需要永久生效:1)將命令寫至profile和bashrc中,相當于在登錄時自動動態修改限制;2)在/etc/security/limits.conf中添加記錄(需重啟生效,并且在/etc/pam.d中的session有使用到limit模塊)
linux下進程的最大線程數、進程最大數、進程打開的文件數
linux查看修改線程默認棧空間大小
總結
以上是生活随笔為你收集整理的c++线程数量的限制的全部內容,希望文章能夠幫你解決所遇到的問題。