I Have a one big 32bit application implemented in CPP. This c++ application call another .net dll implemented in c# using COM interface. After some function calls from c++ to c# I get OutOfMemory exception in .net dll. This could be due to fact that I have to allocate some very large List having more than 3000 object references. But the problem is that when I analyse that memory consumption of the process in Windows Task Manager the memory consumption is only 800 MB while it could have gone upto 2 GB.
So the question is what could be the reason that without consuming the full process space why am I getting memory consumption ? Is there any memory limitation for the .net dll due to which it is getting limited memory ? How can I increase the memory allocated to .net dll so that heap size can be larger?