Рейтинг@Mail.ru
Авторские онлайн-курсы от ведущих IT-разработчиков

Многопоточное программирование на С/С++

9 модулей 4-6 часов в неделю
Дмитрий Калугин-Балашов, Руководитель группы разработки поиска по почте в Mail.Ru Group и преподаватель в Техносфере.

В курсе принцип многопоточного программирования рассматривается в контексте разработки сетевых и высоконагруженных систем. Ядром курса является обучение межпроцессному взаимодействию (IPC) и синхронизации потоков. Пройдя курс, вы сможете разработать собственный веб-сервер, который позволит отработать полученные навыки.

  • Пролог
    • Вводный урок курса
    • Пролог
    • Диагностический экзамен
  • Контейнеры. Умные указатели. Аллокаторы
    • Контейнеры
    • Умные указатели
    • Аллокаторы
  • Сокеты Беркли. Мультиплексирование
    • Сокеты Беркли
    • Мультиплексирование
  • Асинхронная работа с сетью
    • Библиотека libevent
    • Библиотека libev
    • Библиотека libuv
    • Библиотека boost::asio
  • Процессы. Каналы. Сигналы
    • Процессы Unix
    • Сигналы
    • Файлы
    • Каналы
  • Очереди сообщений. Семафоры. Общая память
    • Классическое Unix IPC
    • Очереди сообщений
    • Семафоры
    • Общая память
  • Потоки. Средства синхронизации
    • Потоки POSIX
    • Мьютексы
    • Условные переменные. Барьеры
    • Потоки C++11
  • Параллельное программирование
    • OpenMP
    • Intel TBB
    • MPI
  • Эпилог
    • Финальный экзамен
    • Эпилог
    • Заключительный урок
Сертификат
Mail.Ru
Формат курса
Курс освещает следующие темы: контейнеры, умные указатели, аллокаторы, работа с сетью, межпроцессное взаимодействие, работа с потоками, параллельное программирование. Для получения сертификата надо набрать 900 баллов из 1000. Герои, набравшие 1000 баллов, получат сертификат с отличием.
Язык
Русский
Целевая аудитория
Студенты математических и технических специальностей ВУЗов.
Создано
Mail.Ru Group
SHARE
Требования

Знание C/C++. Умение обращаться с Unix-like операционными системами.

Описание

Перед курсом предлагается пройти диагностический экзамен, который не оценивается, но позволяет понять, насколько вы готовы идти дальше.

Курс состоит из семи двухнедельных учебных модулей:

  • Контейнеры. Умные указатели. Аллокаторы.
  • Сокеты Беркли. Мультиплексирование.
  • Асинхронная работа с сетью.
  • Процессы. Каналы. Сигналы.
  • Очереди сообщений. Семафоры. Общая память.
  • Потоки. Средства синхронизации.
  • Параллельное программирование.

Каждый модуль оценивается в 100 баллов.
Кроме того есть финальный "экзамен" - собственный проект - он оценивается в 300 баллов.

Чтобы получить сертификат, надо набрать 900. Для сертификата с отличием нужно 1000.

Раздел в стадии разработки, следите за нашими обновлениями!