Re: [OT] Mail hangs real-time processes
Re: [OT] Mail hangs real-time processes
- Subject: Re: [OT] Mail hangs real-time processes
- From: Jeff Moore <email@hidden>
- Date: Tue, 6 Jan 2004 18:15:40 -0800
On Jan 6, 2004, at 4:34 PM, Urs Heckmann wrote:
Am Mittwoch, 07.01.04 um 01:12 Uhr schrieb Jeff Moore:
Before, I get into this, I remembered one other question that would
be helpful to know the answer to: When the hang happens, does the
mouse move normally? That is, does it stutter around or move smoothly
like normal?
My observation reg. Mail.app: Mouse moves, but nothing else happens /
is clickable. Only Beachball when over a Mail.app window...
(corresponding observations with iChat, Safari, but I got used to it)
The reason I ask is that different "bad things" are happening if the
mouse can move versus when it can't. Usually if it can't, that means
that something really high priority, like the HAL's IO thread, is
spinning. If it can, that usually means that something not quite so
high has gone out to lunch. It helps focus the thinking about the
problem.
At any rate, 50000+ messages in one folder is probably on the large
side for mail folders.
Hmmm. Dunno. Shall I delete some?!? 8-))
Speaking as someone who never saves his email beyond 60 days, I'd say
yes =)
Opening one is going to cause a massive amount of disk IO and
possibly a fair amount of VM paging, especially given the amount of
RAM you have.
Something interesting reg. paging: I put huge precalculated tables
into my stuff as const static arrays in .h files. - When I got
dropouts in one of my plugins, I watched top (after some long,
hopeless searches for bugs 8-) and found out that sometimes these
large lookup tables are not necessarily loaded upon Component open. I
got page ins. Hence, if you have lookup tables, better touch them
once upon loading a plug...
(sorry for being a bit off topic)
That's sage advice.
I think something similar happens with large blocks of allocated
memory. The addresses get reserved, but the backing store and other
resources for the pages don't get allocated until they are touched the
first time. If I remember correctly, using calloc() instead of malloc()
will do it for you.
--
Jeff Moore
Core Audio
Apple
_______________________________________________
coreaudio-api mailing list | email@hidden
Help/Unsubscribe/Archives:
http://www.lists.apple.com/mailman/listinfo/coreaudio-api
Do not post admin requests to the list. They will be ignored.