質問: CreateThread関数を使用して、スレッドを立ち上げる際に、第二引数でスタックサイズを指定した場合、その指定したスタックサイズをOSが変更(最適化?)してプログラムが動くということはあるのでしょうか? 例) CreateThreadでスタックサイズ「4000」を指定 ただ、実際にそのスレッドのスタックサイズは「5000」だった
回答: あります。CreateThreadの説明にあるとおりスタックのサイズはメモリのページサイズの倍数に丸められるので指定したサイズにはならないです。 あとこれはあくまで初期サイズなので足りなくなったら自動的に拡大します。