Hvad du finder i Debug Navigator

Hver ansøgning inden iOS består af en eller flere tråde, som hver repræsenterer en enkelt vej udførelse gennem anvendelse kode. Hver ansøgning starter med en enkelt tråd, som løber hovedfunktion programmets.

Den røde tråd omfatter programmets vigtigste køre loop, og det er, hvor NSApplication objektet modtager begivenheder. Ansøgninger kan tilføje (spawn) ekstra tråde, som hver især udfører koden for en bestemt metode.

Valg af et emne i Xcode 4 s Debug navigator forårsager oplysninger om varen, der skal vises i Source editor. For eksempel at vælge en metode viser kildekoden til denne funktion i Source editor.

Tråde per se er langt uden for rammerne af denne artikel, men det er okay: Her kan du være bekymret med kun den røde tråd.

Hver gang du sender en meddelelse (eller lave et funktionskald), debugger gemmer oplysninger om det i en stak ramme og så det gemmer alle sådanne rammer i indkaldelsen stakken.

Når du er kastet ind i debugger grund af en fejl (eller hvis du holde pause i programmet ved at klikke på knappen Pause på værktøjslinjen), viser Xcode trådlisten, og inden for hvert tråd kaldstakkens for at tråd, at sætte den seneste opkald øverst. Indkaldelsen stak viser et spor af de objekter og metoder, der fik dig til hvor du er nu.

Selvom spor er ikke virkelig alt, nyttige i denne særlige sammenhæng, kan det være meget nyttigt i en mere kompleks program - det kan hjælpe dig til at forstå den sti, du tog for at komme derhen, hvor du er. At se, hvordan et objekt sendt en besked til et andet objekt - der sendt en meddelelse til en tredje formål - kan være virkelig nyttige, især hvis du ikke forvente, at programmet flow til at arbejde på den måde.

Kom et kig på kaldstakkens kan også være nyttigt, hvis du prøver at forstå, hvordan rammerne gør sit arbejde, og i hvilken rækkefølge beskeder sendes. Som du snart vil se, kan du stoppe udførelsen af ​​dit program på et breakpoint og spore beskeder, der sendes op til dette punkt.


© 2019 Zajacperrone.com | Contact us: webmaster# zajacperrone.com