Feeder thread priority
Feeder thread priority
- Subject: Feeder thread priority
- From: Roni Music <email@hidden>
- Date: Mon, 24 Sep 2007 17:20:35 +0200
Hi,
I'm experiencing a drop out problem when my app runs on certain
customers newer
MacBooks running OS X 10.4
I can't duplicate the problem on either my dual G4 or my Intel iMac
so it's hard to track the
problem.
I'm reading the audio data of the files in a separate feeder thread
set to what I guess is the highest
priority == 63. I'm using the CAPthread class with a fixed priority.
I can simulate the problem by copying a large number of files at the
same time as my
application is playing. This will interrupt playback from time to time.
It's not that FSReadFork() call in the feeder thread takes a long
time (as I first suspected) but
rather that the feeder thread is not waked up when it's time. Instead
it seems that (in this
case), the file copying has a lot higher priority than the maximum
priority I'm able to set for
my feeder thread. I have tried to fix it with more and larger buffers
but it doesn't fix the
problem, it just makes the drop outs appear less often so this is not
a solution.
Whned the drop out appears, the feeder thread is blocked 500 and 1000
ms.
So my questions is:
How can I raise the priority even more on my feeder thread? (I see
that the CoreAudio IO
callback has a priority 97, much higher than my feeder thread). I
suspect the file copying
has a higher priority than 63 else it wouldn't block my feeder thread.
So some background processes on my customers MacBooks also works with
a very high priority it
seems?
Except for the file copying described above, I have never experienced
one single dropout on
my own machines, this is strange, or?
Any hints?
Thanks,
Rolf
_______________________________________________
Do not post admin requests to the list. They will be ignored.
Coreaudio-api mailing list (email@hidden)
Help/Unsubscribe/Update your Subscription:
This email sent to email@hidden