Re: MP Threads & Core Audio
Re: MP Threads & Core Audio
- Subject: Re: MP Threads & Core Audio
- From: kelly jacklin <email@hidden>
- Date: Wed, 8 Aug 2007 12:45:58 -0700
On Aug 8, 2007, at 12:36 PM, Bob Stuller wrote: Folks, Greetings! Nearly five years ago, Kelly Jacklin wrote the following & now I need to know how valid his remarks are in 2007: [snip]
MPNotifyQueue takes a global (to the process) lock, in order to ensure the rather bizarre termination semantics of the MP API. If this lock is held by any other thread, your thread will priority invert with this thread, and you will end up blocking until that thread has relinquished this lock. While this is not usually a long time, it can be longer, depending on the actions being performed by other threads in your app and the load on the system.
In fact, when you are operating on the IOProc (which SoundInput completions are), you want to do as few blocking operations as possible (ideally none). [snip] This information is still accurate. The MPNotifyQueue (and most other MP API calls) still has to take a global (within a process) lock to satisfy the interesting asynchronous termination requirements of the MP API.
And doing anything that blocks an IOProc is still generally a bad idea...
kelly
|
_______________________________________________
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