<i>Thus to manage 1000 concurrent requests, the 1000 threads would consume 1GB of the JVM’s RAM just for thread’s stacks.</i><p>Can anyone explain why this could be an issue on a 64-bit JVM, assuming these threads only need a small fraction of the 1MB of stack they&#x27;re allocated? 1GB of address space is nothing on a 64-bit system, and surely the only physical memory that&#x27;s allocated is what the threads actually use.<p>Does the JVM enforce a limit on virtual allocations, even for its own &#x27;internals&#x27; like thread stacks?