Path: utzoo!utgpu!news-server.csri.toronto.edu!cs.utexas.edu!sdd.hp.com!zaphod.mps.ohio-state.edu!unix.cis.pitt.edu!dsinc!bagate!cbmvax!peter From: peter@cbmvax.commodore.com (Peter Cherna) Newsgroups: comp.sys.amiga.tech Subject: Re: IDCMP and Guru 0100 000C Message-ID: <15952@cbmvax.commodore.com> Date: 19 Nov 90 18:56:40 GMT References: <27003.2747b9c2@kuhub.cc.ukans.edu> Reply-To: peter@cbmvax.commodore.com (Peter Cherna) Organization: Commodore, West Chester, PA Lines: 46 In article <27003.2747b9c2@kuhub.cc.ukans.edu> markv@kuhub.cc.ukans.edu writes: >But, now a real question. I have a mediumish heavily intuitionalized >program. There are menus, two scrolling list type boxes, and several >gadgets. Memory usage is about 170K out of 3-4M free. I dont have >any memory leaks (squashed the last one last night). I am running the >release 2.02 on an early 3000. > >The problem is this. If I do something to generate IntuiMsgs *very* >quickly (like type very fast, etc) and Process the messages quickly >(ie: Get/Reply) them, when I exit memory is *severly* fragmented (ie: >Any suggestions? (I'm not sharing the IDCMP port, I'm not falling >behind in Msgs, etc). Oh, one side note, all my Amiga allocations are >VIA Alloc/FreeRemember(). I added some tracking code and I am freeing >all Remember Keys, and not freeing any Invalid ones, and I am using >TRUE for the flag. Be sure you don't access the fields of the IntuiMessage after you've replied it. Are you doing any allocations inside of your event loop? Also, FreeRemember(FALSE) is a very good way to frag the memory of the system. Try running with enforcer and memmung both active. If all else fails, you may mail me your event loop. >Lessee, we've got IDCMP Flags of CLOSEWINDOW, GADGETUP/DOWN, MENUPICK, >ACTIVATE, VANILLAKEY, INTUITICKS, NEWSIZE, REFRESHWINDOW. The window ^^^^^^^^ ACTIVATE is not an IDCMP flag, it's a window flag. Perhaps you want ACTIVEWINDOW, which is the IDCMP flag to set if you wish to hear when your window is made active. This shouldn't be the cause of your main problem, I think. >is SIMPLE_REFRESH. There's never any XXXVERIFY msgs, and gadgets are >of all varieties. >Mark Gooderum Only... \ Good Cheer !!! Peter -- Peter Cherna, Software Engineer, Commodore-Amiga, Inc. {uunet|rutgers}!cbmvax!peter peter@cbmvax.commodore.com My opinions do not necessarily represent the opinions of my employer. I have found a proof for Fermat's theorem, but there is no room in the .sig!