objective-c – NSTimer cae cada vez más atrás

Tengo un NSTimer (que se ejecuta en el hilo principal) que se supone que se activa cada 0.02s. Sin embargo, noto que a medida que el uso de memory comienza a upload (la aplicación captura un marco cada vez que se toca y se almacena en una matriz), las marcas posteriores comienzan a tomar más de 0.02 segundos.

¿Cómo puedo resolver este problema? Estoy empezando a pensar que NSTimer no es adecuado para tareas de alta frecuencia como esta.

Como dicen los docs ,

Un timer no es un mecanismo en time real; solo se dispara cuando uno de los modos de ciclo de ejecución al que se ha agregado el timer se está ejecutando y puede verificar si el time de disparo del timer ha pasado. Debido a las diversas fonts de input que administra un bucle de ejecución típico, la resolución efectiva del intervalo de time para un timer está limitada al order de 50 a 100 milisegundos.

Desde 100 milisegundos = .1 segundos y su timer debe funcionar cada 0.02 segundos, su cronogtwig es mucho más corto que la resolución efectiva del timer, por lo que su cronómetro puede salir fácilmente de synchronization.