Курсы по программированию

Формула программиста
основатель — Волосатов Евгений Витольдович
Шаблоны Проектирования / Java

Бурные потоки / Замри!

  • На этом уроке мы поговорим о статусах потока:
    Unstarted, Running, Wait/Sleep/Join, Abort Requested, Stopped.
    Создадим функционал для остановки потоков по нажатию клавиш.
    И научимся сопротивляться этим остановкам.
  • Дата отправки отчёта: 24 апреля 2016 г.
  • Задание выполнено: за 20 мин.
  • Чему научился: Создавать функцию для остановки потоков по нажатию клавиш.
  • Что было сложным: все понятно
  • Комментарии: замечаний нет
  • Оценка видео-уроку:
Отчёт от 6644 за Бурные потоки / Замри!




Оцени работу

 
Сохранить страницу:

24. Оля
Оля
ответить
→  valerys Nikola  # Бурные потоки / Замри! / 2016-04-24 22:32

Классно что все получилось и все легко и понятно, я очень рада как у тебя проходит обучение! :)


  • Отчёт оценивали:
    7119Новопашин Владимир0   4467Alcatraz+1   1537Сергей+1   9237Mais+1   8380zhikharevav+1   9567Максим+1   6452Lik_Kirill+1   8835Булат+1   9288Pučko Antonina+1   4992Николай+1   689Igorenzia+1   9263Андрей Н.+1   459Сергей Сергеевич+1   7645Александр Львович+1   1Евгений Витольдович+1   24Оля+1   3506Алексей|BrisK|Кривицкий+1   10038Богдан Федоренко0   1947Denis+1   6958Кирилл+1   5567Albert+1   7690Babenko Oleg0   7679Lukina Dajana0   7682Svirbutovič Edgar0   7308AZANIR+1  

Начинаем практику по языку C#




Чтобы стать хорошим программистом — нужно писать программы. На нашем сайте очень много практических упражнений.

После заполнения формы ты будешь подписан на рассылку «C# Вебинары и Видеоуроки», у тебя появится доступ к видеоурокам и консольным задачам.

Несколько раз в неделю тебе будут приходить письма — приглашения на вебинары, информация об акциях и скидках, полезная информация по C#.

Ты в любой момент сможешь отписаться от рассылки.
Научился: Останавливать поток по клавише и игнорировать запрос на его остановку
Трудности: разобраться в разнице между lock и Monitor. Как я понял lock это обертка для использовании функций класса Monitor, но этот класс предоставляет больше тонких настроек, не только вход и выход из критической секции. Также тело критической секции должно быть наиболее маленьким, ошибки все равно могут возникать. Об этом тут написано: https://blogs.msdn.microsoft.com/ericlippert/2009/03/06/locks-and-exceptions-do-not-mix/
Если зажать клавишу с номером потока и не отпускать, на поле в случайных местах, и даже на рамке появляется эта цифра цветом того потока, где случилось прерывание. Это видно на скиншоте)
Научился: Провел эксперименты с остановкой движения каждого питона.
Трудности: Понять смысл работы с ThreadAbortException и методом Thread.ResetAbort();
Так до конца и не понял почему нужно было помещать в while() еще один while() и для чего применяли Thread.ResetAbort(); если все равно питон продолжал двигаться(((