Re: AudioDeviceStop and ioProc
Re: AudioDeviceStop and ioProc
- Subject: Re: AudioDeviceStop and ioProc
- From: Jeff Moore <email@hidden>
- Date: Tue, 23 May 2006 14:20:39 -0700
As Bill says, the command line version is definitely the way to go.
It even has a pretty good man page to help you out.
At any rate, the new backtraces you put in the previous email work
out like this:
- Thread 2 appears to be the the main thread. It is blocked making a
call to AudioDeviceStop(). The lock it is blocked on is definitely
the IO thread lock.
- Thread 3 appears to be the HAL's notification thread. It is also
blocked trying to lock the IO thread lock, probably because it is
fielding a notification from the driver. The other back trace for
this thread shows the thread in it's normal, quiet state.
- Thread 5 appears to be an IO thread. It is not blocked. Rather, it
is in a system call that maps a pthread ID to a mach thread ID so
that the HAL can change the thread into a time constraint thread.
Being a running IO thread, this thread is holding the lock that the
other two threads are blocked on.
This information is inconclusive. It looks to me like all the HAL
threads are functioning normally. The IO thread is not blocked, so it
will eventually let go of the lock which will unblock the other
threads. I imagine that there are other threads in this process. I
would need to see what those threads are doing to be able to diagnose
the hang further.
BTW, these back traces are classic examples of why an instantaneous
look at the stacks is not really that helpful when trying to diagnose
a hang. To an untrained eye, thread 5 might looked blocked. It isn't,
but the only way to know that is to do what the sample tool does:
take snapshots of the stacks over time. This would show that this
thread has many different back traces because it is still running.
On May 23, 2006, at 11:14 AM, William Stewart wrote:
Try this from the command line:
% sample <PID> <duration in secs>
You can just type sample and get a list of options.
Bill
On 22/05/2006, at 11:01 PM, Steve Checkoway wrote:
On May 22, 2006, at 10:34 PM, Steve Checkoway wrote:
I'm going to reinstall the dev tools to see if I can get Sampler
to work.
No luck. The private framework it requires was not installed. I'll
ask on the Xcode-users list.
--
Jeff Moore
Core Audio
Apple
_______________________________________________
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