public void Close(bool remove = true) { running = false; foreach (var ws in webSites) { ws.Value?.Close(); if (remove) { webSites.Remove(ws.Key); } } AccessProvider.Close(); NavigationProvider.Close(); ServerProvider.Close(); ClientProvider.Close(); NewsProvider.Close(); UserProvider.Close(); db.Close(); }