|
-
July 22nd, 2012, 11:21 PM
#1
Releasing heap memory???
On a linux system at work, there is this one particular process that many of us have observed on occasion that will continue to grow in memory during specific processing periods, and never shrink. We've observed this through some command line tools like "top". Once this process reaches some critical point, the system simply locks up. No other processes seem to produce any significant work. They've tried to mitigate some of this by altering queue sizes and timing constraints for this and other processes. Some of us, me included, have mentioned this problem to one of the programmers of this particular system, and have indicated that there must be some sort of memory leak in this particular process. The programmer indicated that once a process allocates memory on the heap, that even though you later release that memory, the process still maintains usage of that memory, and no other processes will have access to, or be able to use it. Is this true??? This is completely contrary to everything I've believed for the last umpteen years. He claims that this is simply the way computers are architected (irrespective of the OS), and there is nothing you can do about it. I'm flabbergasted!!!
I can't seem to find anything on the internet with regard to how releasing memory from one process will or won't affect other processes. All I've run across is how you should always release heap memory you've previously allocated as the programmer is completely responsible for this type of memory manipulation in order to prevent memory leaks. Nothing about how a process will still continue to own that memory even though you've release it. If this is true, I guess I need to go back to Computer Basics 101!!!
Can someone please confirm or deny this accusation?
Posting Permissions
- You may not post new threads
- You may not post replies
- You may not post attachments
- You may not edit your posts
-
Forum Rules
|
Click Here to Expand Forum to Full Width
|