I meant to increase the delay in the cron however Scallio has also put forward a pretty good idea.
With regards to a daemon, see my comments below.
Indirectly you can using a loop, set_time_limit(0) and ignore_user_abort(true). Call the page, click the stop button and the script will continue looping until it say finds a 'stop' file or a marker in a database. Not quite the same but it would be easier than creating a daemon to run as its own process. I know i've used this technique for several things and it works well on both windows and *nix systems. I'll admit its a bit crude and possibly frowned upon by the programming elite but it does work and its simple to put into action.
Sample here (untested):
//No time limit
//Ignore the browser closing connection
//Anti CPU locking
I know its crude but it does the job..