Advertisement
Guest User

Untitled

a guest
Jun 16th, 2019
73
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.13 KB | None | 0 0
  1. public class AsyncHelper
  2. {
  3. private static readonly TaskFactory _myTaskFactory = new TaskFactory(CancellationToken.None,
  4. TaskCreationOptions.None, TaskContinuationOptions.None, TaskScheduler.Default);
  5.  
  6. public static TResult RunSync<TResult>(Func<Task<TResult>> func)
  7. {
  8. var cultureUi = CultureInfo.CurrentUICulture;
  9. var culture = CultureInfo.CurrentCulture;
  10. return _myTaskFactory.StartNew(() =>
  11. {
  12. Thread.CurrentThread.CurrentCulture = culture;
  13. Thread.CurrentThread.CurrentUICulture = cultureUi;
  14. return func();
  15. }).Unwrap().GetAwaiter().GetResult();
  16. }
  17.  
  18. public static void RunSync(Func<Task> func)
  19. {
  20. var cultureUi = CultureInfo.CurrentUICulture;
  21. var culture = CultureInfo.CurrentCulture;
  22. _myTaskFactory.StartNew(() =>
  23. {
  24. Thread.CurrentThread.CurrentCulture = culture;
  25. Thread.CurrentThread.CurrentUICulture = cultureUi;
  26. return func();
  27. }).Unwrap().GetAwaiter().GetResult();
  28. }
  29. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement