En Java, puede suspender la ejecución del hilo actual durante un período de tiempo usando Thread.sleep()
. ¿Hay algo como esto en Objective-C?
ios
objective-c
cocoa-touch
sleep
Levi
fuente
fuente
Dormir un segundo en Java:
Dormir un segundo en el objetivo C:
fuente
¿Por qué estás durmiendo? Cuando duerme, está bloqueando la interfaz de usuario y también cualquier URL de fondo que no se cargue en otros subprocesos (el uso de los métodos asíncronos de NSURL aún funciona en el subproceso actual).
Lo más probable es que lo que realmente desee sea performSelector: withObject: AfterDelay. Ese es un método en NSObject que puede usar para llamar a un método en un intervalo predeterminado más tarde: programa una llamada que se realizará en un momento posterior, pero todas las otras cosas que maneja el hilo (como la interfaz de usuario y las cargas de datos) todavía continúa.
fuente
Por supuesto, también puede usar las llamadas estándar sleep () y usleep () de Unix. (Sin embargo, si escribo Cocoa, me quedaría con [NSThread sleepForTimeInterval:]).
fuente
Si usa NSThread sleepForTimeInterval (código comentado) para dormir, la recuperación de datos se bloqueará, pero + [NSThread sleepForTimeInterval:] (método checkLoad) no bloqueará la recuperación de datos.
Mi código de ejemplo de la siguiente manera:
fuente
usleep () también se puede usar ya que lo he usado para pausar el hilo actual a veces
fuente