.NET 4.x WebBrowser в Task - C#

Узнай цену своей работы

Формулировка задачи:

Не могу создать объект WebBrowser в Task'e, поскольку он требует STA, который Task, насколько я понял, не поддерживает. Вообще возможно работать с этим классом в задаче?

Решение задачи: «.NET 4.x WebBrowser в Task»

textual
Листинг программы
  1. public static Task<T> StartSTATask<T>(Func<T> func)
  2. {
  3.     var tcs = new TaskCompletionSource<T>();
  4.     Thread thread = new Thread(() =>
  5.     {
  6.         try
  7.         {
  8.             tcs.SetResult(func());
  9.         }
  10.         catch (Exception e)
  11.         {
  12.             tcs.SetException(e);
  13.         }
  14.     });
  15.     thread.SetApartmentState(ApartmentState.STA);
  16.     thread.Start();
  17.     return tcs.Task;
  18. }

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

14   голосов , оценка 4.286 из 5

Нужна аналогичная работа?

Оформи быстрый заказ и узнай стоимость

Бесплатно
Оформите заказ и авторы начнут откликаться уже через 10 минут