Je développe NSOperation (appelez-le A) qui contient NSOperationQueue pour d'autres NSOperations (qui est une autre classe étendue différente de A, appelez ces opérations B). Lorsque l'opération A est en cours (exécution des opérations B), comment puis-je appeler une fonction/méthode spécifique sur l'opération A lorsqu'un certain événement a lieu sur les opérations B? Par exemple chaque opération B qui le termine appelle une fonction sur l'opération A qui se retourne?Effectuer le sélecteur sur le parent NSOperation
* Nested NSOperation et NSOperationQueue (s)
espoir ce code mockup pseudo peut aider à dessiner l'image.
//My classes extended from NSOperation
NSOperation ClassA
NSOperation ClassB
//MainApp
-(void)applicationDidFinishLaunching:(NSNotification *)aNotification {
ClassA A1;
ClassA A2;
NSOperationQueue Queue;
Queue AddOperation: A1;
Queue AddOperation: A2;
}
//Main of ClassA
-(void)main {
ClassB B1;
ClassB B2;
NSOperationQueue Queue;
Queue AddOperation: B1;
Queue AddOperation: B2;
}
//Main of ClassB
-(void)main {
//Do some work and when done call selector on ClassA above
}
Sons alambiqués et terribles. Qu'essayez-vous de faire? –
Un pseudo-code pourrait rendre le problème plus clair. –
@Dave DeLong: Ceci est une expérience de codage. L'application prend le nombre d'URL qui pointent vers un fichier de téléchargement sur un serveur. NSOperation est créé pour chaque URL, la taille du fichier est déterminée et divisée en blocs. A partir de là, chaque fragment du fichier est téléchargé par NSOperation séparé. Cela a-t-il du sens. – MikeM