I would look at using ajax. On the first call, use the scheduler to start the long computation, and the call also sets a cookie, and activates a "busy" display that uses a timer to make the second call. The second call sees the cookie, checks for results, displays what it can, and if not done repeats the busy/timer activation.
I'm interested in using this technique myself, but haven't quite got the js down to do the equivalent of $(document)ready(), but I'm hoping someone can fill in that gap.
Dave
/dps