かなりの数のスレッドを生成するコードを書いています (現時点では約 512 ですが、将来的にはさらに増える可能性があります)。各スレッドは少量の操作しか実行しないため、スレッドがシステムに与えるオーバーヘッドを最小限に抑えたいと考えています。
を使用してスタック サイズを設定しています。pthread_attr_setstacksize()
最小許容スタック サイズを から取得できますPTHREAD_STACK_MIN
。しかし、私の質問は次のとおりです。スレッドスタックサイズに使用しても安全ですか? PTHREAD_STACK_MIN
必要なスタックの量を計算するにはどうすればよいですか? 計算に追加する必要がある隠れたオーバーヘッドはありますか?
また、システムに対するスレッドの負担を軽減するために使用できる他の手法はありますか?