@Override public void shutdown() { remoteNodeManager.shutdown(true); garbageCollectionMonitor.disable(); lifecycleManager.shutdown(); for (AudioSourceManager sourceManager : sourceManagers) { sourceManager.shutdown(); } ExecutorTools.shutdownExecutor(trackPlaybackExecutorService, "track playback"); ExecutorTools.shutdownExecutor(trackInfoExecutorService, "track info"); ExecutorTools.shutdownExecutor(scheduledExecutorService, "scheduled operations"); }