If you are in the windows world, you probably want to be consistent with that metophor and have your program status be printed into a window that the user can see.
If you install tk, then play with the 'widget' demo that comes with the install, you will see a bouncing ball simulation. That proves that it's possible to 'multi-task' in a limited way within perl.
You would probably want to make a large 'Text' widget and just write into that as you go. There's a tk command that I can't think of right now that will update the screen so that the user can see what you placed into the widget. It's a kind of 'yield' command. Oh, it's in the Tk::After docs: vwait or update.
Alternatively, you can just use 'After' to run all you logic in which case as each piece of logic runs, it will return control to the screen briefly for a second, then the next 'after' kicks in.