2013-03-12 20 views
6

Xcode mostra i thread nel navigatore di debug.Xcode Thread 1: È sempre il thread dell'interfaccia utente principale?

sono numerati: Thread 1, Thread 2, ecc

mi accorgo che sono sempre in discussione 1. E 'corretto presupposto che è principale thread UI? Io uso libs/SDK come Facebook e AFNetworking hanno callback e delegati. Ma la sicurezza del thread non è sempre documentata in modo adeguato.

+1

È meglio, altrimenti la maggior parte delle app scendeva in una raffica di fiamme quando tentavano di utilizzare UIKit da un thread in background. – CodaFi

risposta

7

Non ricordo quale, ma in uno dei video WWDC (dal 2011, penso), ho sentito un ingegnere menzionare che gli interni UIKit presuppongono che il thread 1 sia l'interfaccia utente.

Quindi sì, non è "semplicemente" la migliore pratica, penso che ci siano delle dipendenze tecniche concrete.

Per quanto riguarda la documentazione specifica, non trovo facilmente una dichiarazione "ufficiale"; ma penso che sia perché è ancora più fondamentale di quello. Ad esempio, questo tipo di menzione casuale del ruolo del thread principale è tutto il luogo (tratto da the iOS App Programming Guide (ad esempio iOS 101)

Il thread principale è dove la vostra applicazione gestisce gli eventi touch e altri input dell'utente.

Problemi correlati