So first a little history: my Ti800DVI recently has become really slow, hard drive spinning constantly, until finally I got an "out of memory" type error which popped up, and sure enough my hard drive was full. I deleted a couple things (about 2 gigs worth), rebooted, and suddenly I had 25 gigs free.
Since I've recently been doing some work developping my own applications, I suspected a memory leak in one of my apps might have contributed to this over an extended period.
Can someone answer the following questions:
1. Suppose I do have a memory leak in a program; I was under the impression this memory would be freed back to the system when the program terminates, is this correct?
2. What if the application crashes? Does the memory still get freed?
3. I found "MallocDebug" and "ObjectAlloc", in the developer tools, both of which would seem to be good tools to help if there is a leak. The former didn't work with my app for some reason, but the latter did. As a simpler place to start though I thought I'd check out "Process Viewer". For every app it lists two memory stats; a) Virtual Memory Size and b) Resident Memory Size.
a) seems self explanatory, is b) the amount of actual physical RAM being used? I imagine that if I had a memory leak, and my app kept allocating more and more memory it would show up here. Is this true? Can I use these numbers to track my apps overall memory footpring over time, or is there some kind of memory allocation that Process Viewer misses?
Okay, I think that's enough questions to start, thanks for any help on this one.