Магистерский курс C++ (МФТИ, 2022-2023). Лекция 19. Многопоточность, часть 2.

Лекции в магистратуре МФТИ по современному C на русском языке. Кафедра микропроцессорных технологий. Продолжая многопоточность мы теперь должны познакомиться со всем находящимся в наших руках инструментарием. В первую очередь мы рассмотрим одноразовую инициализацию и разберём известный антипаттерн double-checked lock. Далее мы перейдём к идее условных переменных и введём понятия uniuque_lock, нотификаций и внезапных пробуждений. Потом нас ждёт много попыток понять что же происходит в нашем многопоточном приложении. Ну и под конец мы зароемся глубже в разделяемые и прочие виды блокировок. Лектор: Константин Владимиров. Дата лекции: 22 марта 2023 года. Съёмка и звук: Юлий Тарасов. Предыдущая лекция: Следующая лекция: Слайды ко всем лекциям: Примеры кода ко всем лекциям: Timeline: 00:00 Консенсус компиляторов 04:28 Одноразовая инициализация 08:20 DCL и std::once_flag 17:40 События и оповещения 27:20 Unique lock и spurious wakeup 38:40 Сеанс чёрной магии и фокусы strace 47:40 Упражения и задания в perf 52:25 Mutable mutex 57:35 Разделяемые блокировки 01:09:34 Остальные типы блокировок 01:15:34 Размеры основных типов и литература Errata: * ждёт ваших комментариев
В начало