Wie setze ich einen symbolischen Haltepunkt für _WebThreadLockFromAnyThread in Xcode?

Ich verwende Xcode 4.3.2 mit lldb als Debugger.

Ich habe ein Projekt geerbt, das Code enthält, der UIKit von sekundären Threads aufruft, wie in den folgenden Protokollmeldungen gezeigt:

2012-05-02 21: 48: 14.603 Appname Dev [77594: 16e0f] void _WebThreadLockFromAnyThread (bool), 0x8d5f810: Abrufen der Websperre von einem anderen Thread als dem Haupt- oder dem Web-Thread. UIKit sollte nicht von einem sekundären Thread aufgerufen werden.

Ich habe den größten Teil des Codes, der UIKit-Aufrufe von sekundären Threads ausführte, bereinigt, sehe diese Meldung jedoch gelegentlich in den Protokollen. Die App stürzt nicht ab, sodass es schwierig ist, das Problem zu lokalisieren.

Ich möchte einen Haltepunkt setzen_WebThreadLockFromAnyThread, aber wenn ich versuche, einen symbolischen Haltepunkt zu setzen:

<code>b _WebThreadLockFromAnyThread
</code>

Der Debugger sagt mir:

Haltepunkt festgelegt - Name '_WebThreadLockFromAnyThread' Haltepunkt erstellt: 12: Name = '_WebThreadLockFromAnyThread', Speicherorte = 0 (ausstehend) WARNUNG: Haltepunkt kann nicht in tatsächliche Speicherorte aufgelöst werden.

Ich habe auch versucht, den symbolischen Haltepunkt mithilfe der Benutzeroberfläche im Haltepunktnavigator zu erstellen, bin mir jedoch nicht sicher, was für das Modul eingegeben werden soll. Wenn ich das Modul leer lasse, wird der Haltepunkt erstellt, der jedoch nicht unterbrochen wird, wenn die Protokollmeldung in der Debug-Konsole angezeigt wird.

Kann mir jemand sagen, wie ich vorgehen kann, um einen Haltepunkt hinzuzufügen_WebThreadLockFromAnyThread, und auch wie würde ich feststellen, was das definierende Modul für dieses Symbol ist?

Antworten auf die Frage(3)

Ihre Antwort auf die Frage