 <p>According to <a href="http://java.sun.com/javase/technologies/hotspot/vmoptions.jsp" rel="nofollow noreferrer">this page</a>, the default stack size depends on the OS.</p> <p><strong>Sparc:</strong> 512</p> <p><strong>Solaris x86:</strong> 320 (was 256 prior in 5.0 and earlier) <em>(update: According to <a href="http://bugs.sun.com/bugdatabase/view_bug.do?bug_id=4689767" rel="nofollow noreferrer">this page</a>, the size of the main thread stack comes from the ulimit. The main thread stack is artificially reduced by the vm to the -Xss value)</em></p> <p><strong>Sparc 64 bit:</strong> 1024</p> <p><strong>Linux amd64:</strong> 1024 (was 0 in 5.0 and earlier) <em>(update: The default size comes from ulimit, but I can be reduced with -Xss)</em></p> <p><strong>Windows:</strong> 256 (also <a href="http://bugs.sun.com/bugdatabase/view_bug.do?bug_id=4689767" rel="nofollow noreferrer">here</a>) </p> <p>You can change the default setting with the <strong>-Xss</strong> flag. For example:</p> <pre><code>java ... -Xss1024k ... &lt;classname&gt; </code></pre> <p>would set the default stack size to 1Mb.</p>