IIM Home |
I noticed that IIM was using a LOT of memory, or at least Windows said it
was. When you'd start IIM it would sit at around 18MB of RAM, then if you
minimized the main Dock window it would shrink to around 1.2MB. And as IIM
sat there it would slowly start using more memory, it looked like a leak but
then all that used memory would go away when you re-minimized the main dock.
Something
weird was going on. Here is what IIM uses:
If you have any questions about the effectiveness, here's a log of what IIM thinks it's using for memory, both before and after cleanup. 20:43:18,250 [IIM.MemoryManagement.FlushMemory] - Memory used before clean up called 529 KB 20:43:18,250 [IIM.MemoryManagement.FlushMemory] - Memory used after clean up called 476 KB 20:43:55,078 [IIM.MemoryManagement.FlushMemory] - Memory used before clean up called 5302 KB 20:43:55,093 [IIM.MemoryManagement.FlushMemory] - Memory used after clean up called 563 KBThe Jump up to 5302KB was a result of sending a RAW screenshot to another machine in a chat window. and as you can see from the time stamp, that the clean up does take a bit (15 ms in the case of flushing 480KB)). If you're writing some massive multi-user, performance intensive application then this is not the solution for you. It works just fine for a single user app. The additional used memory between 476 and 563 is an open Chat window with a screen shot displayed in it. You may have noticed that the 563KB is still bigger than the 1.2MB I mentioned earlier. Unfortunately Windows associated the memory used for the .Net Framework with your app and tacks it on to what you app is actually using. Using the type of logging above I've found that the 'memory creep' I was noticing was not due to the memory my app was using, it was the tacked on framework overheard that was creeping. |
|