Поздравляю с окончанием миникурса "Бурные потоки".
Напиши, пожалуйста, отзыв об этом курсе. Что тебе понравилось, что было сложным, что новым, что можно было бы сделать лучше.
Ты молодец!
Какой курс ты будешь проходить следующим?
Дата отправки отчёта:
23 апреля 2016 г.
Задание выполнено: за
5 мин.
Чему научился:
Повторил то, что знал о потоках и предназначении static, узнал о приоритетах потоков и Monitor
Что было сложным:
Ничего
Комментарии:
Этот курс, как и другие в этой серии (других я не проходил), получился просто замечательный, особенно в плане визуализации. Но, в отличии от других, в этот раз это больше замечательная заготовка (для обучения и демонстрации работы с потоками). Сейчас попытаюсь объяснить. Я заметил, что все курсы из линейки "Професишарп" связаны: после того, как в первом мы во всех подробностях рассмотрели IEnumerator, с лёгкостью использовали его во втором, для создания класса работающего с графами, который, я надеюсь, очень пригодится нам здесь для того, чтобы змейка, например, шла к ближайшему зайцу. Как бы то ни было, в этом курсе заметно, что он третий подряд. За одну неделю одному человеку практически невозможно подготовить такую обширную тему, как потоки, тем более с такой потрясающей визуализацией.
Теперь о самом курсе. Если вы ничего не знаете о потоках, лучше сначала пройдите урок "Нити на кубиках" (videosharp.info/video/soft2/nr=62), так как курс называется "Професишарп" и подразумевается, что что-то мы таки знаем =) Что же мы делали на этом курсе? Как я уже сказал большую его часть заняла визуализация, но она полностью стоила того, чтобы потратить на неё столько времени, но, естественно, это не всё. Также мы довольно детально рассмотрели подводные камни, которые встречаются, когда вы хотите, чтобы один объект работал в нескольких потоках, такие как: использование ключевого слова static и механизмы для синхронизации доступа к объектам lock и Monitor. Кроме этого, мы узнали, как задавать потоку определённый приоритет, что это даёт, как прерывать потоки извне, как обрабатывать это прерывание в самом потоке и как один поток может ожидать завершения другого (но, я считаю, что на последнее было выделено мало времени).
Как видите, получился с одной стороны не длинный, и с другой стороны довольно насыщенный курс, и хотя довольно много всего было рассмотрено, почти всё это основы, так сказать база, без которой возможно рассматривать потоки на более глубоком уровне; вот почему, я считаю, что то, что есть на данных момент - это замечательный шаблон, взяв который который за основу можно ещё очень много сделать. С другой стороны, я и сам не знаю, что находится на этом "более глубоком" уровне, да и есть ли он вообще, так что вполне могу ошибаться на счёт всего этого. Но, в любом случае, с нетерпением жду продолжения =)
Научился: Научился использовать потоки, не только Thread.Sleep(), но и Lock, и Monitor, теперь знаю, что такое критическая секция, гонка потоков, Join, приоритеты (хотя последние два понятия думаю мало кто использует), понял разницу между основным потоком и фоновым. Теперь сделать отзывчивый пользовательский интерфейс не проблема. ) Но это все база! Курс отличный, но маленький. Такая серьезная тема, этот курс требует доработки в будущем. Многое осталось за бортом. Придется изучать самостоятельно. Следующий курс в порядке очередности.
А питончики получились классные. Трудности: все просто. думал будет сложнее.
Научился: Курс дает основы для разработки многопоточных приложений. Питоны получились довольно интересными! Наверно, было бы неплохо взять еще какой-нибудь пример использования потоков ну и разобать подробнее как они работают, какой поток выполняется и т.д. А еще ссылке на литературу, где это грамотно объяснено. Следующий курс - по порядку. Наверно пора бы уже WPF начать, а то все не добраться Трудности: Сложно начать писать многопоточные приложения