private async void SearchAsync() { _priority = new Priority(); _visited = new HashSet <string>(); _isSearching = true; RaisePropertyChanged(nameof(SearchCommand)); FoundItems.Clear(); var job = _search.CreateSearchJob(_searchWords, _depth); _queue.Enqueue(job, _priority.GetBestPrio()); await Task.Factory.StartNew(Consume); }