23
script A
(insert (current-time-string))
(sleep-for 5)
(insert (current-time-string))
M-x eval-buffer, two time strings are inserted with 5 secs apart
script B
some comint code (that add hook, and start process)
(sleep-for 60) ;delay a bit for process to finish
(insert "ZZZ")
M-x eval-buffer, "ZZZ" is inserted right away, without any time delay
what might have happened? btw, it's Emacs 23.2 on Win XP