Страницы

Поиск по вопросам

понедельник, 18 февраля 2019 г.

Обработка данных в потоке C#

C# WPF
Не знаю как сформулировать запрос гугл, по этому пишу тут. Задача такова: Есть метод
public List GetObjectsFromUrl(Uri url)
который загружает строку с URL'а и парсит её кастомным парсером json(используя Json.Net). В общем-то задача эта довольно продолжительная и пока всё это происходит UI подвисает(естественно). Теперь вопрос: как, используя бекграунд потоки, сделать всё в этом методе?(обязательное условие чтобы именно этот метод возвращал список). Возможно я пишу какой-то бред, не судите, с Thread'ами можно сказать не работал вообще.


Ответ

Вам надо вынести выполнение метода в фоновый поток.
Например, так:
List objeсts = await Task.Run(() => GetObjectsFromUrl(url));
(Ваш метод при этом станет async-методом, да.)

Комментариев нет:

Отправить комментарий