It would be possible to spawn threads to hand off processing to, but
the philosophy I've always read is it's better not to do
multi-threading at all than to do it badly. That's a whole other can
of worms that I suspect neither of us has time for right now, but it's
a thought. Really I'm not convinced that it's even worth doing if one
knew how, but I suppose a little research on processing system hook
callbacks might give a little insight. In my mind, it seems that any
problems that may arise in this regard can be avoided by simply taking
one's time between actions so that we don't get ahead of our code when
recording a macro. And here again, I'm not convinced that it's even a
problem that needs solving, although I'm not discounting the weird
delay problems you experienced. I'm just glad they don't seem to be
happening recently, so maybe it was some other cause altogether.
I reckon if it's working as-is, then that's the important thing. We
could always set a threading expert loose on it later just to see if
it yields any improvements.
Mr. G