A related technique is to have the initial request not actually do any work but just return a page with the animated "loading..." image and a refresh header/metatag that causes the browser to issue another request for the "real" page; that second page can take as long as needed to generate the results which will then replace the first page.