2009-12-27 6 views
1

J'ai un tel code:Utiliser performSelectorInBackground pour exécuter indicateur de chargement

[self performSelectorInBackground:@selector(indicator) withObject:nil]; 
[self mail]; //opening my controller of e-mail sending 
- (void)indicator 
{ 
    [actView startAnimating]; 
} 

Cela fonctionne très bien, mais j'ai peur de la sécurité fil. Je n'alloue pas de mémoire dans un deuxième fil, mais smth me dit que c'est trop simple :)

Répondre

1

vous ne devriez pas utiliser cette méthode. toute modification de l'interface utilisateur à partir des threads d'arrière-plan entraînera des fuites de mémoire.

2

startAnimating retournera tout de suite, donc vous ne gagnez rien en l'appelant en arrière-plan.

0

Non, ce n'est pas le cas. Cela fonctionne jusqu'à ce que le contrôleur ne soit pas poussé. J'ai ajouté un pool autorelease à ma fonction, c'est sûr.