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

Формула программиста
основатель — Волосатов Евгений Витольдович
Вступай в Телеграм чат проекта
Вебинар «Мы начинаем PHP + Yii2» начнётся через 2 дня 13 час. 10 мин.

Новые технологии / Нити на кубиках

  • Демонстрация использования потоков с делегатами на примере игральных кубиков.
  • Дата отправки отчёта: 14 сентября 2015 г.
  • Задание выполнено: за 43 мин.
  • Чему научился: Потоки.. но очень очень слабо(
  • Что было сложным: private void ShowDice(int a, int b)
            {
                if (InvokeRequired) //если метод вызван из другого потока (необходимо организовать очередь)
                {
                    Invoke(new DelegateShow(ShowDice), new object[] {a, b }); //вызвали функцию DelegateShow(ShowDice) и передали параметры a и b.
                    return;
                }
                textDices.Text = a + " : " + b;
            }
    перематывал, слушал, но так и не очень понял про if (InvokeRequired), и собственно что мы делаем..
  • Комментарии: так и не перезаписали этот урок, а тема потоков практически не раскрыта (. может лучше показывать их в консоле, хм
  • Оценка видео-уроку:
Отчёт от 6458 за Новые технологии / Нити на кубиках




Оцени работу

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

24. Олюшка
Олюшка
ответить
→  Илья  # Новые технологии / Нити на кубиках / 2015-09-14 23:08

Илья, пробору с брекпоинтом пошагать, просмотреть как и что передается иногда это для понимания помогает! Я уверена что ты разберешься! Отложи на время и потом еще раз вернись! Ты уже Молодец! :)



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




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

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

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

Ты в любой момент сможешь отписаться от рассылки.


Научился: узнал про потоки немножко на C#
Зачем new object[] {a,b} ? Ведь можно так Invoke(new DelegateShow(ShowBox), a, b); Чтобы ошибка невыскакивала ведь надо потоки остановить всеровно их Вот в форме написал private void Form1_FormClosed(object sender, FormClosedEventArgs e) { dice1.Stop(); dice2.Stop(); dice3.Stop(); } Вот в Dice написал public void Stop() { thread.Abort(); } и все ошибок невыскакивает. В говарящих часах ведь тоже использовали потоки чтобы одновремменно говарили время и время шлобы. Про потоки очень большая тема и интересная ее сейчас в магистрантуре изучают.


Научился: Закрепил работу с Invoke
Реализовал через массив элементов Dice, удобнее потом через foreach с ними работать. Отличный урок как всегда. Очень хороший пример запуска функций из других потоков.