Red de conocimiento informático - Problemas con los teléfonos móviles - El uso del temporizador (Timer) en Swift

El uso del temporizador (Timer) en Swift

Notas sobre el uso de Timer y NSTimer:

1. Dado que iOS usa runLoop como mecanismo de bucle de mensajes, el hilo principal inicia runLoop de forma predeterminada, pero el hilo secundario no tiene un runLoop predeterminado, por lo que en El subproceso secundario puede iniciar runLoop.

2. Problema del modo RunLoop

Si el temporizador se agrega al RunLoopMode predeterminado, UITrackingRunLoopMode no se programará durante el deslizamiento, lo que provocará que el temporizador falle.

Debido a que tanto UITrackingRunLoopMode como KCFRunLoopDefaultMode marcan el modo común, puede agregar un temporizador a runLoopCommonModes para lograr un funcionamiento normal tanto en el modo predeterminado como en el modo de seguimiento.

3. Cuando finalice el reparto y el tiempo, ejecute invalidar y vacíe el temporizador. Evite pérdidas de memoria