Уроки C#. Многопоточность. Часть 1

preview_player
Показать описание
Начинаем работу с потоками в C#. В первой части разбираются способы и механизма взаимодействия потоков в графических приложениях (WinForms, WPF).

Статьи на RSDN.ru:

Ссылки на предыдущие уроки:

Рекомендации по теме
Комментарии
Автор

Прямо праздник какой-то - каждый новый выпуск. Да ещё зимой обычно много праздников... Главное, чтобы у автора энтузиазм делиться своим опытом не пропадал. Я уверен - его жизненная карма обязана при этом становиться лучше. И его английский каким-то волшебным образом тоже.

СофияСолнцева-йщ
Автор

7:31 Thread
12:41 Invoke
19:31 SynchronizationContext

nlyne
Автор

Просто отличный урок.


Т.е. сейчас (в наши дни) рекомендовано использование Task.Run.

arkadiyshuvaev
Автор

Очень хорошо - лаконично, ничего лишнего!

НаталияАбргамович
Автор

отличный канал, организаторы уроков молодцы! искал именно в подробнастях. Спасибо!

dloplb
Автор

Хорошее описание, все четко и по делу!

АндрейЛ-ув
Автор

С первого раза понял про многопоточность. Браво автор

regondaadnoger
Автор

Спасибо за такие каналы как ваш! Очень полезная информация!

mishalavik
Автор

Спасибо огромное! Целый день парился. А тут все по полочкам.

Цап-Царап-рт
Автор

Спасибо за урок. Познавательно. То что искал. Но осталось пара вопросов, хотя они м.б. были рассмотрены позднее.
Многопоточность с Invoke.
Ну как бы вопрос с содержимым кнопки "Отмена" отпал сам собой там и правда только _worker.Cancel();
Так вот:
1. Для чего в тексте форме после инициализации строки:
button1.Click += button1_Click;
button2.Click += button2_Click;
????
С ними нажатие на кнопку старт запускает сразу два потока. И у многих, как и у меня, возникла проблема с остановкой потока, он и прерывался и продолжал выполняться дальше. Решение Закомментировать или удалить эти строки.

2. Никто не пробовал закрыть форму (Главный "Красный" поток) до завершения синего, пока ProgressBar не заполниться? Вылетает законное исключение.
Как отловить это исключение, точнее как остановить Синий вспомогательный поток при остановке главного Красного?

antonegorov
Автор

Как же долго я искал именно такой урок. Спасибо вам большое!!!

resolution
Автор

Большое спасибо за урок!
На моей предыдущей работе все разработчики тоже говорили "шедУлер". Так по-родному звучит ))))

natunuarat
Автор

именно то что я искал, спасибо большое !

denyszorin
Автор

Вспомнился фильм "Охотники за привидениями".) "Нельзя скрещивать потоки!" =)

gydrazine
Автор

хорошиее видео подробное у вас получаеться все понятно

ТимурАбдулов
Автор

Круто. Tasks бы с async\await действительно не помешал) 

CatWorldson
Автор

Насчёт ситуации c прогресбаром в 16:16 : может это происходить из-за того, что к тому моменту когда вылезает окно операции по отрисовке( непосредственно рендерингу) ещё не успели выполниться до конца или не выполнился весь стек команд на отрисовку ?

deretor
Автор

ASP.NET MVC это вообще интересная тема. так что буду ждать

Rustammv
Автор

Ролик отличный, жаль отсутствует ссылка на код. Есть немного неточностей:
17:00 Добавили строчку " progressBar.Value = progress + 1; ",
но тогда в цикле при i = 100 условие i<=100 (цикл описан 3:02 )будет ошибка тк progressBar.Value не может быть больше 100!!!
Та программа которая выполняется у автора ролика не соответствует коду написанному на экране, т.к. на 16:38 комплитометр не доходит до конца при нажатии только на кн старт значит в цикле написано не for(int i = 0; i <= 100; i++), а for(int i = 0; i <= 99; i++)
по этому и не вылезает исключение. Было бы правильно указать в описании ролика, что присутствуют ловушки для бегемота.

alexkuzmin
Автор

Вряд ли. Если что и будет, то ASP.NET MVC

Defazze