×
Вы действительно хотите открыть доступ к тестированию по курсу C# Асинхронное программирование на 40 дней?
ВИДЕОУРОК №3. Планировщик задач. Дочерние задачи.
Данный урок является введением в асинхронное программирование на языке C#. Для правильного понимания технологий и методов их применения вы ознакомитесь с основной терминологией и рассмотрите примеры, когда необходимо применять техники асинхронного программирования. На этом уроке вы сможете наглядно увидеть, как асинхронность в прямом смысле оживляет приложения различных шаблонов (Console, WPF).
Урок познакомит вас с работой библиотеки TPL – Task Parallel Library. Вы подробно ознакомитесь с работой класса Task/Task TResult, который лежит в основе асинхронного программирования. На уроке будет рассмотрено большинство свойств и методов классов Task и Task TResult. Также в этом уроке рассматривается нововведения в библиотеке, а именно структура ValueTask/ValueTask TResult.
Цель данного урока в том, чтобы познакомить студента с работой планировщика задач. Мы подробно рассмотрим класс TaskScheduler и рассмотрим несколько популярных реализаций этого абстрактного класса. Задача второй части урока состоит в разборе дочерних и вложенных задач, для понимания различий этих типов задач, сказывающихся на их поведении.
Урок познакомит вас с работой ключевых слов async await. Будут подробно рассмотрены правила использования каждого из этих ключевых слов. Для более глубокого понимания работы async await, будет рассмотрена их внутренняя реализация, которая обеспечивается с помощью специальных типов и некоторой работы компилятора.
Урок познакомит вас с работой ключевых слов async await в приложениях WPF и ASP.NET. Задача урока состоит в том, чтобы рассмотреть работу продолжений оператора await при взаимодействии с контекстом синхронизации, планировщиком задач и пулом потоков для выполнения в их контексте продолжений. Будет рассмотрены способы повлиять на работу продолжений оператора await, особенности работы типа возвращаемого значения void с модификатором async, а также асинхронные лямбда выражения.
Урок познакомит слушателей лекции с принципами асинхронного программирования. На уроке будут рассмотрены как разновидности асинхронных операций, так и асинхронность в целом. После этого урока студенты получат полное представление о понятии «асинхронность». Будут рассмотрены основные асинхронные шаблоны программирования, а также чистые асинхронные API для упрощения работы с асинхронным шаблоном TAP и ключевыми словами async await. Студенты научатся переписывать API старых асинхронных шаблонов согласно новому TAP. Для этого, на уроке рассматривается тип TaskCompletionSource. В конце урока будут рассмотрены ограничения в использовании оператора await.
Урок познакомит вас со способами поимки и обработки исключений в контексте потоков и задачах. Мы рассмотрим особенности обработки исключений с помощью ключевых слов async await. На этом уроке, мы также коснемся исключений и их обработки в контексте дочерних и вложенных задач. После этого, мы познакомимся с отменой выполнения задачи, то есть с так называемой скоординированной отменой. Чтобы писать асинхронный код качественно, необходимо знать о блокировках. На этом уроке мы рассмотрим некоторые ситуации, которые могут к ним привести, а также рассмотрим решения этой проблемы. Рассмотрим решение с использованием ключевых слов async await и настройк работы оператора await в виде метода ConfigureAwait. В конце урока мы рассмотрим прогресс асинхронной операции. Иногда это может помочь сделать ваше приложение более привлекательным для пользователя.
Урок познакомит вас с потокобезопасными коллекциями из пространства имен System.Collections.Concurrent. На этом уроке будут рассмотрены коллекции, работающие по шаблону Producer-Consumer, это: ConcurrentQueue, ConcurrentStack, ConcurrentBag. Так как эти коллекции реализуют собой шаблон Producer-Consumer – на уроке будет рассмотрен и этот паттерн. Для его обеспечения мы познакомимся с потокобезопасной оболочкой BlockingCollection. После этого, мы познакомимся с классом для параллельных вызовов и параллельных циклов – Parallel. Будут разобраны вопросы по настройке выполнения этого типа и по слежению за состоянием параллельных итераций. А также, будет рассмотрена обработка исключений из класса Parallel.
Урок познакомит вас с потокобезопасной коллекцией ConcurrentDictionary. Эта коллекция будет рассмотрена в полном объеме. Начиная от рассмотрения всех API по работе с элементами, заканчивая настройкой и технической реализацией коллекции. Во второй части урока будет рассмотрен язык параллельных запросов Parallel LINQ (PLINQ). Этот урок познакомит вас с тем, как устроен PLINQ, какие у него есть операторы, а также как их можно настраивать. Также, не обойдем стороной отмену выполнения параллельного запроса и обработку исключений, возникших в нем.
Вопросы и ответы
Онлайн курсы имеют ряд преимуществ перед оффлайн форматом:
- Независимость от локации. Онлайн позволяет учиться где угодно.
- Сохранение денег и времени на дорогу. Вы экономите время и деньги с поездок на курсы и обратно.
- Онлайн курсы дешевле. Нет нужды в помещении и ноутбуках для студентов, поэтому стоимость ниже.
- Удобный темп обучения, постоянный доступ к информации. Обучение в вашем темпе в любом месте 24/7. Также есть доступ к записанным урокам, чего нет в оффлайн формате.
На ITVDN есть 2 формата обучения: Live Online и видео курсы. Цена обучения зависит от выбранного вами способа обучения.
Если вы хотите учиться самостоятельно в формате видео курсов, стоимость обучения составит в среднем 10-15 USD в месяц в зависимости от выбранного вами пакета подписки.
Live Online – это онлайн обучение с тренером в группах вместе с другими студентами. Учеба в данном формате стоит в среднем 6-7 USD за один час.
Зависит от того, сколько внимания программированию вы будете выделять ежедневно, какой именно это язык и какой у вас опыт кодинга. Среднее время на овладение одним языком при условии регулярных занятий хотя бы 2 часа в день:
- новички – от 3 до 6 месяцев;
- те, кто имеет базовые знания другого языка – от 1 до 3 месяцев;
- профессиональные программисты – до 1 месяца.
Самый лучший вариант инвестиции времени – 8 часов ежедневно (20% теории + 80% практики). Больше практики – быстрее овладеете программированием.
Для овладения IT-специальностью нужно выделить не менее 500 часов, из которых около 100 часов – на просмотр видео уроков или посещение онлайн занятий с ментором, а 400 – на выполнение практических заданий по пройденным темам.
В зависимости от того, сколько времени вы готовы выделять на обучение в день, вы сможете пройти программу за 3-8 месяцев. Если у вас есть определенная база знаний по IT, количество необходимого времени будет меньшим.
Также продолжительность обучения зависит от выбранной вами специальности, поскольку набор технологий, которые вы должны изучить, будет разным.
Начинать следует с тех, которые содержат в названии слово “Стартовый”. Такие курсы имеют вводный материал для знакомства с языком или технологией.
Если вы планируете учиться по конкретной специальности в формате видео курсов, перейдите на страницу специальности и прокрутите до заголовка “Видео курсы по специальности …”. Ниже будет список видео курсов, отсортированных в порядке необходимости изучения.
Ещё ниже вы найдете Roadmap по специальности – путеводитель, на котором изображены видео курсы в виде дерева, что также легко сориентирует вас в последовательности прохождения курсов.
Если вы выбираете Live Online обучение с тренером, всё очень просто:
- посещайте все занятия, вовремя выполняйте д/з;
- дополнительно смотрите видео уроки на ITVDN;
- после каждого урока проходите краткое тестирование;
- практикуйтесь в Интерактивном практикуме;
- общайтесь с одногруппниками в ходе решения д/з, задавайте вопросы ментору на уроках и вне их;
- в конце каждого курса сдавайте экзамен на TestProvider (и получайте Сертификаты);
- в конце всего обучения проходите экзамен по специальности и получите диплом.
Мы имеем специальный раздел – “Вакансии”, который помогает нашим студентам искать первую работу в IT. Детальнее о возможностях и о разделе по ссылке.
А для тех, кто учится онлайн с ментором, у нас дополнительно предусмотрена индивидуальная помощь HR-специалиста по подготовке к трудоустройству с первого дня обучения и до получения первого job-оффера. Она включает в себя помощь в оформлении соцсетей, подготовке резюме, проведении пробного собеседования, предоставлении советов по поиску работы и самопрезентации и т. д.
К сожалению, данная услуга ITVDN не предусмотрена, однако вы можете заказать индивидуальную консультацию с нашим ментором. Подробности вы найдете по ссылке.
На ITVDN отсутствуют курсы для детей, поэтому комфортный возраст для начала обучения по нашим материалам – от 14 лет.
Никаких требований к вашему уровню английского мы не выдвигаем, поскольку все учебные материалы идут на русском или украинском языках. При этом базовые знания английского будут полезны для комфортного поиска информации в гугле, чтения документаций в интернете и прочего.
На ITVDN можно пройти полное обучение с нуля до специалиста уровня Trainee/Junior. Если вы уже практикующий разработчик, наши видео курсы помогут углубить ваши знания до уровня Middle.
После окончания действия вашей подписки доступ к видео курсам, к сожалению, будет закрыт. Однако вы сможете пользоваться теми учебными материалами, которые вы скачали на свой девайс во время обучения.
Нет, скидки не суммируются.
Отзывы наших студентов
Отзывы в DOU
4,9/5 - 195 отзывов
Отзывы в Facebook
5,0/5 - 704 отзыва
Отзывы в Google
4,9/5 - 814 отзыва