К вашему сведению: чтобы получить желаемый эффект (такой же, как на странице документации по Bootstrap в Твиттере), мне нужно было указать «тело» в качестве целевого элемента ... Я не мог заставить работать scrollspy с использованием непосредственного родителя элементы, которые я хотел шпионить в качестве цели.
(Он просто всегда автоматически выбирал мой последний элемент)
Разделите текущий код рисования в отдельный поток и запустите в нем (тот же) код таймера. Это должно дать вам больше контроля.
Профилируйте свой код, чтобы увидеть, сколько обработки выполняется в каждом из этих 1/25 слотов - возможно (и, вероятно, так) вам просто нужно оптимизировать ваш код.
Похоже, количество таймеров не проблема. Накладные расходы NSTimers в основном несущественны по сравнению с загрузкой, которую вы выполняете в своей «связке подпрограмм». Пока не беспокойся об этом. Используйте столько таймеров, сколько вам нужно. После этого откройте shark / tools и посмотрите, на какие методы вы тратите больше всего времени.
1 в вашем случае. Добавление дополнительного таймера не ускоряет работу вашего приложения.
Вы должны сделать свой код более эффективным или запускать таймер реже.
Я не знаю о накладных расходах таймера, но это может быть значительный с такой высокой скорострельностью. Таймеры не предназначены для этого, я предлагаю альтернативу.