My workflow for hanging Observable tabs is:
- If I know it’s the current tab that’s causing the perfomance drain, I open up the Sources tab in dev tools and pause, then stop, the worker thread.
- Otherwise I pull up the activity monitor and kill the “Google Chrome Helper” process that’s eating up all the CPU. This will cause all cell contents in all open notebooks to go black, which makes it easy to spot any notebooks I may need to reload.
- The biggest gotcha might be breakpoints and
debugger;
statements: Pausing a script in one tab will also pause execution of other notebooks, with the effect that cells will stay blank even if you reload the page.
In this case I have to look through all Observable tabs where the dev tools are open.