| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > .NET для новичков > Многопоточность Backgroundworker и Tasks |
| Автор: Grigorill 19.8.2011, 14:07 |
| Недавно изучаю C# подскажите пожалуйста разницу между Backroundworker и Tasks нашел на http://xn----8sbabkb0btnaqcmocur.xn--p1ai/c-sharp/thread/ispolzovanie-backgroundworker-v-c-ili-kak-izbavit-formu-ot-podvisanij описание работы с данным элементом.Ниже прочитал коментарий про Task в котором говорится что они удобнее и проще в использовании, но нормального примера по ним так и не нашел. Дайте совет что лучше? все ли я правильно понял (то есть можно заменить Backgroundworker task ом)? И если есть пример для новичков, буду благодарен. |
| Автор: jonie 19.8.2011, 14:58 |
| BWorker был создан до создания Task. Он ориентирован на работу бэкграунд потоков, которым нужна синхронизация с гуем для вывода информации о своем состоянии (прогрессе). В отличие от этого Task над этим не заморачивается и предназначен скорее для долгоиграющих потоков или для потоков кому не надо рапартовать о своих действиях в Гуй. |
| Автор: Grigorill 19.8.2011, 15:21 |
| Понял то есть если мне не надо использовать прогрессбар например, а просто освободить интерфейс программы то Task подойдет? Сейчас у меня есть один довольно долгий процесс который заставляет подвисать форму на 2-3 минуты. Хотелось бы освободить поток для того чтобы можно было хотя бы свернуть форму или нажать отмену. |