About the Debug Navigator
The debug navigator displays the call stacks of your paused app. With this navigator you can debug C-based code and OpenGL frames.
Selecting an item in the debug navigator causes information about the item to be displayed in the editor area and in the debug area.
Debugging C-based Code
When debugging C-based code, the navigator groups the stack frames by threads or queues, and lists the memory locations you’re interested in. Use the debug navigator to navigate the stack frames of your app’s threads, and to manage viewed memory locations for the current debugging session.
The debug navigator opens automatically whenever you pause your application (by choosing Product > Debug > Pause), or it hits a breakpoint. (You can change that behavior in Alerts preferences.)


Threads indicate their running state with a status icon:
No icon means the thread is running normally.
A yellow status icon means that the thread is blocked and waiting on a lock or condition.
A red status icon means that you suspended the thread. A suspended thread does not execute code when you resume your application.
The debug navigator contains a scope bar, the thread and memory location list, and a filter bar.
With the scope bar you indicate how the navigator displays threads:
By Thread: Displays threads as a flat list.
By Queue: Groups threads under the dispatch queue that created them.
With the filter bar you specify the threads and stack frames you want to see.
Thread filter: Shows only relevant threads.
Call stack slider: Shows stack frames, from only the most relevant to all of them.
To remove a memory location from the list, select it and press Delete.
If you are debugging multiple processes from the same workspace, each process is listed separately in the debug navigator with its threads grouped underneath it. Multiple process debugging is a useful way to debug the interactions between client and server processes.
Debugging OpenGL Frames
When debugging an OpenGL frame, the debug navigator shows the OpenGL call trace that generated the captured frame. The call trace includes the stack frame for each OpenGL call.


The debug navigator contains the OpenGL call trace and a filter bar.
With the filter bar (the bottom box on the left in the screenshot) you specify the OpenGL calls and stack frames you want to see.
Call filter: Shows only markers and OpenGL draw calls.
Call stack slider: Shows stack frames, from only the most relevant to all of them.
© 2012 Apple Inc. All Rights Reserved. (Last updated: 2012-09-19)