public void Unregister(Workspace workspace, bool blockingShutdown = false) { WorkCoordinator?coordinator; lock (_gate) { if (!_documentWorkCoordinatorMap.TryGetValue(workspace, out coordinator)) { // already unregistered return; } _documentWorkCoordinatorMap.Remove(workspace); coordinator.Shutdown(blockingShutdown); } SolutionCrawlerLogger.LogUnregistration(coordinator.CorrelationId); }