Uh!! Ehh! That's quite a mouth full :D
First of all, when you call your windows persistent, they'll run simultaneously (not multithreaded - Big difference). Progress will load a persistent procedure into memory, run the main part, and return to the caller. The new procedure will respond to...