Рет қаралды 9,417
Лекции в магистратуре МФТИ по современному C++ на русском языке. Кафедра микропроцессорных технологий.
На этой лекции мы выходим на коду нашего курса: многопоточность во всех её проявлениях. Начнём мы с грунтования фундамента и разбора простых и фундаментальных вещей. Что такое область памяти? Что такое поток? Что такое гонка? Зачем нужен volatile? Что такое безопасность относительно многопоточности? Мы ответим на все эти вопросы. Также мы разберём основные проблемы проектирования для многопоточной безопасности: API races и deadlocks.
Лектор: Константин Владимиров.
Дата лекции: 15 марта 2023 года.
Съёмка и звук: Юлий Тарасов.
Предыдущая лекция: • Магистерский курс C++ ...
Следующая лекция: • Магистерский курс C++ ...
Слайды ко всем лекциям: sourceforge.net/projects/cpp-...
Примеры кода ко всем лекциям: github.com/tilir/cpp-masters
Timeline
00:00 Потоки исполнения
09:42 Области памяти и гонка
15:35 Volatile
27:20 Правила гонки и pthread
36:15 Мьютексы и их тонкости
46:20 Интермедия: безопасность исключений
54:05 Безопасность относительно потоков
01:00:30 API races
01:08:10 Deadlocks
01:14:20 Завершение
Errata
* Пока пусто