At the worst case, the Runnable object can be instantiated multiple times for short duration, which should be fine.