Is there a way to call a block with a primitive parameter after a delay, like using performSelector:withObject