Hi Keith,
Yes, it's a good idea. If you have to run a long process then start a new thread and do it there.
It's not easy to find out what Terry wanted to suggest. Macroloops and plugins run if you set them to run: no problem. Macros, of course, cannot always run. You cannot start a macro in reset or while g-code is running. (You can call a macro from the running g-code, but cannot start one with a button.) I think, there's no magic knowledge, you just have to think: is it normal to run a macro this or that way?