Another possible solution (apart from using fork as recommended by other monks) could be cache. You can pre-generate an an image once per some period of time and then show it instantly to other clients. It is even possible to use a script to make the request for image generation (something along the lines of WWW::Mechanize.
If you are creating the same images repeatedly then this is definitely the way to go. If you put your image creation routine behind a 404 error handler and name your images so that you can parse out the details required to create the image, then you simply reference the image in your web page. If the image already exists it is served up, otherwise it is created, saved, and returned as normal. Also this way, the worst the user gets is a broken image if the request (for the image) times out.