private void WorkerThread(object obj) { if (obj is not WorkerData workerInterface) { throw new ArgumentException("obj is not WorkerData", nameof(obj)); } foreach (var data in workerInterface.Input) { try { workerInterface.OnInputItemDone(DataNameGetter?.Invoke(data) ?? data?.ToString()); } catch (OperationCanceledException) { return; } WorkLogic.Invoke(data, workerInterface.State); } }
private void WorkerThread(object obj) { var workerInterface = obj as WorkerData; if (workerInterface == null) { throw new ArgumentNullException(nameof(workerInterface)); } foreach (var data in workerInterface.Input) { try { workerInterface.OnInputItemDone(DataNameGetter?.Invoke(data) ?? data?.ToString()); } catch (OperationCanceledException) { return; } WorkLogic.Invoke(data, workerInterface.State); } }