public async void StartAsync(object outlookItem) { if (outlookItem == null || tblContacts == null) { return; } UpdateRegionWaiting(); regionManager.ProcessContacts(outlookItem, false); tokenSource = new CancellationTokenSource(10000); await Task.Run(() => ResolveContacts(tokenSource.Token)); if (tokenSource.IsCancellationRequested) { UpdateRegionWaiting("Timed out."); } else { UpdateRegion(); } }