static void cancelTimersAndInterruptThreads(Collection timers) { for (O timer : timers) { if (timer instanceof Thread && !timer instanceof AutoCloseable) // AutoCloseable takes precedence interruptThread((Thread) timer); else cancelTimer(timer); } }