Richtige Art und Weise zu verzögern, wobei die Schlinge weiter zu

Ich habe ein Bedürfnis, zu verzögern, für eine gewisse Zeit, aber doch zulassen, dass andere Dinge auf der gleichen runloop laufen zu halten. Ich habe mit dem folgenden code, um dies zu tun:

[[NSRunLoop currentRunLoop] runUntilDate:[NSDate dateWithTimeIntervalSinceNow:1]];

Diese scheint genau das zu tun, was ich will, außer, dass manchmal die Funktion kehrt sofort ohne Wartezeit die gewünschte Zeit (1 Sekunde).

Kann jemand lassen Sie mich wissen, was könnte dies verursachen? Und was ist der richtige Weg, zu warten, während es die run loop zu laufen?

HINWEIS: ich möchte die Verzögerung in einer ähnlichen Weise wie sleep(), so dass nach der Verzögerung bin ich wieder in der gleichen Ausführung als stream vor.

  • Was ist es, dass Sie möchten, zu verzögern? Haben Sie sah dispatch_after?
  • Ich möchte die Verzögerung von den aktuellen thread, so ähnlich wie sleep(), außer ich will die runloop weiter laufen lassen (also andere Ereignisse und Dinge kann kick in) während dieser Verzögerungszeit.
InformationsquelleAutor Locksleyu | 2012-10-12
Schreibe einen Kommentar