今天工作上遇到 pthread_create() 一直回覆 11 (EAGAIN) 的錯誤值,原來是 threads 開啟數量超過極限值(/proc/sys/kernel/threads-max),不知什麼原因。

  • 取得某 pid 的 threads 總數: ps -o nlwp [pid]
  • 取得系統 threads 總數: ps -eo nlwp | tail -n +2 | awk '{ num_threads += $1 } END { print num_threads }'
  • 利用程式取得 threads 總數,可經由查看 /proc/getpid()/status,其中 Threads 的數字。

台南小新 發表在 痞客邦 PIXNET 留言(0) 人氣()