Advertisement
Guest User

Untitled

a guest
Sep 19th, 2017
69
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.13 KB | None | 0 0
  1. var CancellationTokenSource = new CancellationTokenSource();
  2.  
  3. CancellationTokenSource?.Cancel();
  4.  
  5. CancellationTokenSource = new CancellationTokenSource();
  6.  
  7. var token = CancellationTokenSource.Token;
  8. await RunPeriodically(async () =>
  9. {
  10.  
  11. var screenCaptured = TakeScreenshot();
  12.  
  13. if (screenCaptured == null || CancellationTokenSource.Token.IsCancellationRequested)
  14. return;
  15.  
  16. var correctUserName = Settings.Default.Username.Split('.');
  17. var parsedUsername = correctUserName[0] + " " + correctUserName[1];
  18. await ScreenshotHelper.UploadScreenshotAsync(ProjectName, "screenshotscontainer",
  19. screenCaptured.ToArray(), Environment.MachineName, parsedUsername);
  20. Console.WriteLine("Took Screenshot: " + DateTime.Now.ToString(CultureInfo.InvariantCulture));
  21.  
  22. }, TimeSpan.FromSeconds(3), token);
  23.  
  24. public async Task RunPeriodically(Action action, TimeSpan interval, CancellationToken token)
  25. {
  26. while (true)
  27. {
  28. action();
  29. await Task.Delay(interval, token);
  30. }
  31. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement