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

Формула программиста
основатель — Волосатов Евгений Витольдович
Конкурс Машинного Времени

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

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


Отчёт от 8275 за Бурные потоки / Замри!




Оцени работу

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

24. Олюшка
Олюшка
ответить
→  Tekashnik  # Бурные потоки / Замри! / 2016-04-27 22:54

Александр, рада что тебе понравился урок! Отомри тоже будет!!! :)


  • Отчёт оценивали:
    6452Кирилл Шмойлов+1   9288Pučko Antonina+1   8380zhikharevav+1   1Евгений Волосатов+1   689Igorenzia+1   4992Николай+1   4467Alcatraz+1   1537Сергей+1   7645Александр Львович+1   7119Новопашин Владимир+1   3506Алексей|BrisK|Кривицкий+1   4395Денис+1   9263Андрей Н.+1   6958Кирилл+1   6925Артём+1   9237Mais+1   Посетитель+1   24Олюшка+1   2633Андрей+1   8608lyudo+1  

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




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

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

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

Ты в любой момент сможешь отписаться от рассылки.
Научился: Научился завершать потоки. А также не знал, как в консоле узнать , какая была нажата клавиша.
Спасибо . Очень наглядная картинка состояний потока.
Научился: Узнал о существовании статуса потоков. Попытался ими управлять. Но не все получилось.
Трудности: Непонятно зачем в функции Run() нужно 2 цикла. У меня все работает с одним.
Попытался управлять Питонами с помощью статуса. Но не все получилось. Например, хотел по нажатию клавиши временно приостанавливать поток методом .Suspend(), а затем освобождать методом t[ip].Resume(); (См. в скриншоте закомментированный текст. Условие в строке 52 как-то странно работает: всегда true) Кто-то может указать на ошибку? Зато проверку Thread.ResetAbort(); сделал по-другому, менее жестко: я решил на 2 секунды приостановить выбранного питона, затем освободить его и поменять ему цвет на белый. В динамике это выглядит красиво.