see your function
if you are passing value 1000 to the function it will roll over for 1275000 times. ok?
so whats the problem? when it completes 1275000 cycles it will automatically come out of function and generate some delay. it may not be perfect 1 sec delay.
tell me how you run this delay function. step by step execution will take 1275000 steps. step over execution will take only 1 step