Vidéo: comment débloquer un blackberry curve 8520 2025
Chaque application dans iOS est constituée d'un ou plusieurs threads , représentant chacun un seul chemin d'exécution via le code de l'application. Chaque application commence par un seul thread, qui exécute la fonction principale de l'application.
Le thread principal englobe la boucle d'exécution principale de l'application, et c'est là que l'objet NSApplication reçoit les événements. Les applications peuvent ajouter (générer) des threads supplémentaires, chacun d'entre eux exécutant le code d'une méthode spécifique.
La sélection d'un élément dans le navigateur de débogage de Xcode 4 entraîne l'affichage d'informations sur l'élément dans l'éditeur de source. Par exemple, la sélection d'une méthode affiche le code source de cette fonction dans l'éditeur de source.
Les sujets en eux-mêmes dépassent largement le cadre de cet article, mais ce n'est pas grave: vous ne serez concerné que par le sujet principal.
Chaque fois que vous envoyez un message (ou effectuez un appel de fonction), le débogueur stocke des informations à son sujet dans un cadre de pile et stocke toutes ces images dans la pile d'appels .
Lorsque vous êtes jeté dans le débogueur à cause d'une erreur (ou si vous suspendez l'application en cliquant sur le bouton Pause dans la barre d'outils), Xcode affiche la liste des threads, et dans chaque thread l'appel empiler pour ce fil, en mettant l'appel le plus récent en haut. La pile d'appels affiche une trace des objets et des méthodes qui vous ont amenés là où vous êtes maintenant.
Bien que la trace ne soit pas vraiment utile dans ce contexte particulier, elle peut être très utile dans une application plus complexe - elle peut vous aider à comprendre le chemin que vous avez suivi pour arriver là sont. Voir comment un objet a envoyé un message à un autre objet - qui a envoyé un message à un troisième objet - peut être très utile, surtout si vous ne vous attendiez pas à ce que le flux du programme fonctionne de cette façon.
L'examen de la pile d'appels peut également être utile si vous essayez de comprendre comment le framework fonctionne et dans quel ordre les messages sont envoyés. Comme vous le verrez bientôt, vous pouvez arrêter l'exécution de votre programme à un point d'arrêt et suivre les messages envoyés jusqu'à ce point.
