!7 cmodule2 > DynPrintLogAndEnabled { switchable double interval = 1.0; // seconds transient volatile Map stackTraces; // weakHashMap transient volatile Mao runnableStackTraces; start { dm_reloadOnFieldChange enabled(); if (enabled) dm_doEvery(interval, r { if (!enabled) ret; setFields( tackTraces := toWeakHashMap(allThreadsWithRenderedStackTraces()), runnableStackTraces = filter isThreadRunnable_x(stackTraces)); vmBus_send freshStackTraces(stackTraces, weakRef(me())); }); } visual dm_ }