3

A third-party library provides a function I need to call every 100ms. Setting up a timer to do that works very well as long as my app is on foreground. When my app is on background timer works for a while but after a about a minute timer is called only after 10 second delay. The same happened when I created a separate thread with usleep-function. Is there any way I can keep timer running while my app is on background?

superg
  • 379
  • 1
  • 6
  • 19

2 Answers2

8

Use beginActivityWithOptions:reason: to disable app nap for your application.

Parag Bafna
  • 22,812
  • 8
  • 71
  • 144
  • Brilliant, that was the issue. After disabling app nap my timer now keeps running nicely on background. – superg Dec 16 '13 at 10:17
0

You should try and re-architect to avoid these sorts of frequent timers, especially when your application is in the background. Making this sort of change will improve battery life for your users.