2009-12-21 7 views
5

L'utilisation de cette instruction appelle le sélecteur immédiatement au lieu de 6 secondes à partir de maintenant.PerformSelector Monotouch Threading

this.PerformSelector(myStartWaitForSoundSelector, null, 6.0f); 

Est-ce que quelqu'un sait comment faire fonctionner ceci avec un retard?

J'utilise thread.Sleep(6000) dans la fonction qui est appelée, mais l'application entière se bloque pendant six secondes.

Merci.

Répondre

8

Vous pouvez utiliser un NSTimer:

NSTimer.CreateScheduledTimer(new TimeSpan(0, 0, 6), 
        delegate { Console.WriteLine("teste"); }); 

Cela provoquera le code à l'intérieur du délégué de fonctionner au bout de 6 secondes, sans bloquer le thread principal de l'application.