2011-01-14 12 views

Antwort

11

Ein neuer Thread wird bei jedem Aufruf erstellt -performSelectorInBackground:withObject:

Vom Threading Programming Guide

NSObject Mit

In iOS und Mac OS X v10.5 einem Thread Spawn und später , alle Objekte haben die Fähigkeit, einen neuen Thread zu generieren und ihn zum Ausführen einer ihrer Methoden zu verwenden. Die performSelectorInBackground: withObject: -Methode erstellt einen neuen gelöschten Thread und verwendet die angegebene Methode als Einstiegspunkt für den neuen Thread. Zum Beispiel, wenn Sie einen Gegenstand (dargestellt durch die Variable myObj) haben und das Objekt hat eine Methode namens doSomething, die Sie in einem Hintergrund-Thread ausgeführt werden sollen, könnten Sie könnten den folgenden Code verwenden, das zu tun:

[myObj performSelectorInBackground:@selector(doSomething) withObject:nil];

Die Wirkung des Aufrufs dieser Methode ist dieselbe, als ob Sie den detachNewThreadSelector: toTarget: withObject: Methode von NSThread mit dem aktuellen Objekt, Selektor und Parameterobjekt als Parameter aufgerufen hätten. Der neue Thread wird sofort mit der Standardkonfiguration erstellt und beginnt zu laufen. Innerhalb des Selektors müssen Sie den Thread wie jeden anderen Thread konfigurieren. Beispielsweise müssten Sie einen Pool für die automatische Freigabe einrichten (wenn Sie keine Speicherbereinigung verwenden) und die Ausführungsschleife des Threads konfigurieren, wenn Sie diese verwenden möchten. Weitere Informationen zum Konfigurieren neuer Threads finden Sie unter "Konfigurieren von Thread-Attributen".

+0

Die offiziellen Dokumente sind normalerweise sehr hilfreich. Danke Jona. –

Verwandte Themen