From: pcourterelle <pco...@te...> - 2007-06-14 22:14:29
|
The mistake is most definitely mine...Once I started dissecting the script I determined the memory surge was coming from a different module I was using and how I was importing data with it...I realized as Robert states below that the loading the Win32::GUI DLL takes about 6 mb and after that it's quite minimal....My apologies.. phil ----- Original Message ----- From: "Robert May" <rob...@us...> To: <per...@li...> Cc: <pco...@te...>; <jez...@ho...> Sent: Wednesday, June 13, 2007 5:35 PM Subject: Re: [perl-win32-gui-users] memory management and Win32: :GUI >> From: "pcourterelle" <pco...@te...> >> I've created several some simple scripts with Win32::GUI where there is >> little more than a window, button and listview and the script is using 6 >> MB >> of memory. The memory usage increase dramatically each time a button is >> clicked or the listview is populated. (the buttons do nothing more than >> insert a static text item into the listview - literally "bob" The memory >> usuage never seems to decrease dynamically when the listview is reset. > > On 13/06/07, jez...@ho... <jez...@ho...> wrote: >> Assuming you are using the latest version of Win32:GUI you don't need to >> do >> anything special regarding memory management. When objects go out of >> scope >> all memory and resources are released. Something else is going on - can >> you >> post an example? > > I might believe the 6MB, depending on what figure you're quoting as > 'memory usage'. On the Win98 box I have in front of me, for a single > blank window I get the follwoing figures (from WinTop): > > Allocated: 2632K 3984K > In memory: 1080K 3032K > In use: 848K 2408K > > That's close on 6MB of allocated memory - most of which is due to the > DLL's that are loaded: > > Name Size > ADVAPI32.DLL 0x10000 Win32 ADVAPI32 core component > COMCTL32.DLL 0x88000 Common Controls Library > COMDLG32.DLL 0x2D000 Common Dialogs DLL > Cwd.dll 0x5000 Perl Cwd > GDI32.DLL 0x26000 Win32 GDI Core component > GUI.dll 0xBD000 Perl Win32::GUI > KERNEL32.DLL 0x7A000 Win32 Kernel core component > MSVCRT.DLL 0x46000 Microsoft C Runtime Library > perl.exe 0xB000 Perl.exe > perl58.dll 0xC6000 Perl core DLL > SHELL32.DLL 0x155000 Win32 Shell common Dll > SHLWAPI.DLL 0x66000 Shell light-weight Dll > USER32.DLL 0x11000 Win32 USER32 core component > VERSION.DLL 0x6000 Win32 VERSION core component > > But I agree with Jez that if you're seeing significant (and you don't > say what you think significant is) increases when clicking a button, > then that doesn't sound right. Some (simple) code that exhibits the > problem, some information on what tool you're using to measure the > memory usage, and the figures that you see would allow us to see if > we're seeing the same problem. > > Regards, > Rob. > |