As I was studying about threads and the memory they consume (thread stack), I decided to do a simple load test to see how does number of threads affects RAM on my computer.
So, for the test I used Tomcat, and in the settings.xml set minimal and maximal web container thread pool to 200. After that I did the same while setting pool to 2000. I was shocked 'cause there was no difference in memory occupation (was checking through Windows Task Manger) and it was almost the same. So I thought maybe those threads have to be in the running state, used a load test tool to "bombard" the server and I've managed to do some heavy load, most of the threads were now in the running state but there was no change in the memory consumption between 200 and 2000 threads.
So I'm wondering what is this thread's stack memory all about and does these results mean that memory on the thread stack isn't allocated while the thread is created? How would I be able to simulate thread stack memory growth to the size where a difference in RAM consumption is seen to a "naked eye" on the graphs?
Thanks in advance!