private void OnStarted() { this.IsStarted = true; this.ThreadSafeCreateCancellationTokenSource(); VsThreadingHelper.RunInline(this, VsTaskRunContext.UIThreadNormalPriority, () => { ConfigureStepEventListeners(true); var delegates = this.StartedPrivate; if (delegates != null) { ProgressEventArgs args = new ProgressEventArgs(); delegates(this, args); // Verify that the observer handled it since now easy way of testing // serialized raising and handling of the event across the classes args.CheckHandled(); } }); }