für "Feuer und vergessen", versuchen [self performSelectorInBackground:@selector(heavyStuff) withObject:nil]
. Wenn Sie mehr als eine Operation wie diese haben, sollten Sie sich die NSOperation
und ihre Unterklasse NSInvocationOperation
ansehen. NSOperationQueue
verwalteten Thread-Pooling, die Anzahl der gleichzeitig Operationen und enthält Meldungen oder Sperrung Methoden ausführen, Ihnen zu sagen, wenn alle Operationen vollständig:
[self myFoo];
NSOperationQueue *operationQueue = [[NSOperationQueue alloc] init];
NSInvocationOperation *operation = [[NSInvocationOperation alloc] initWithTarget:self selector:@selector(heavyStuff) object:nil];
[operationQueue addOperation:operation];
[operation release];
[self myBar];
...
[operationQueue waitUntilAllOperationsAreFinished]; //if you need to block until operations are finished
Auf einer niedrigeren Ebene, Sie -[NSThread detachNewThreadSelector:@selector(heavyStuff) toTarget:self withObject:nil]
Gebrauch verwenden können.
fehlt ein 'g' in performSelectorInBackround – Erich
behoben. Danke @Erich. –