J'ai une application Iphone avec 2 threads. L'un écoute le serveur, et l'autre fait des trucs UIKit, OpenGl.Exécution de la méthode App Delegate sur le thread principal à partir du thread secondaire
Je dois exécuter une méthode qui met à jour une vue de la thats thread secondaire écoute à un serveur sur le thread principal qui gère les vues si j'ai utilisé
performSelectorOnMainThread:@selector"createGuessingView" withObject:nil waitUntilDone:YES
mais pour une raison quelconque, la méthode ne fait jamais réalisé. Mettre un point d'arrêt ou un printf au début de la méthode montre qu'il n'est jamais appelé. Je suis vraiment perplexe ici. J'ai utilisé performselectoronmainthread
dans le même programme pour mettre à jour les champs de texte et cela a fonctionné parfaitement.
modifier:
figured it out :) Le problème est que l'objet que j'utilisais performSelectorOnMainThread a été fixé par ce fil avant que l'objet a été initialisé (même alloué) dans le thread principal. Par conséquent, la référence indiquait null et le sélecteur n'était pas reconnu.
Merci pour l'aide
Etes-vous sûr que le récepteur de l'appel à performSelectorOnMainThread est non nul? – imaginaryboy