Aggiungi un osservatore a voi classe che ascolto per le modifiche al valore di isfinished della sottoclasse NSOperation
[operation addObserver:self
forKeyPath:@"isFinished"
options:NSKeyValueObservingOptionNew
context:SOME_CONTEXT];
quindi implementare il seguente metodo, avendo lo sguardo per il contesto vostro registrato come il vostro ascoltatore. È possibile rendere i dati che si desidera recuperare dalla sottoclasse NSOperation disponibile tramite un metodo/proprietà accessor.
- (void)observeValueForKeyPath:(NSString *)keyPath
ofObject:(id)object
change:(NSDictionary *)change
context:(void *)context
Controllare ou la KVO Programming Guide e la Concurrency Programming Guide per maggiori informazioni.
Inoltre, si noti che l'osservatore verrà ricevuto sullo stesso thread dell'operazione, quindi potrebbe essere necessario eseguire il codice sul thread principale se si desidera gestire l'interfaccia utente.
verrà eseguito sullo stesso thread dell'operazione? – Mel
Sì, a meno che non si usi performSelectorOnMainThread per specificare altrimenti. –