public async void RunProgram(RemoteProgram remoteProgram) { if (!manipulator.Connected) return; try { manipulator.Number(remoteProgram.Name); await Task.Delay(1000); manipulator.Run(); } catch (Exception ex) { Console.Error.WriteLine(ex.Message); } }
public async Task RunProgram(RemoteProgram remoteProgram, CancellationToken cancellationToken) { if (!manipulator.Connected) { return; } try { cancellationToken.ThrowIfCancellationRequested(); manipulator.Number(remoteProgram.Name); await Task.Delay(1000, cancellationToken); manipulator.Run(); } catch (OperationCanceledException) { // Cancellation does not require handling as method returns immediately after catch clause } catch (Exception ex) { Console.Error.WriteLine(ex.Message); } }