I've explained the situation in the thread kruuger linked to. It "does" happen in XP, just not as often as in W7.
An old technique to overcome such thing in other languages (such as C++) would be to force a UI thread update by calling the Update method of the Application object. Or in C to call the ProcessEvents function. You could probably do something similar trough vla / textscr/graphscr, though I wouldn't hold my breath.
It's one of the problems of ADesk's fosilized implementation of their lisp interpreter. Unlike other interpreters (especially including all other lisps) there's no threading involved, so while a lisp runs, ACad can do nothing else until it completes - including not even answering windows with a "Are you still awake?" query. Thus the screen update doesn't happen and this could even cause windows to "think" that acad has crashed.