TGViewer
C++ and other lectures C++ and other lectures @cpp_lects_rus · 9.94K subscribers
Post #347 10K
Выложил вторую часть лекции по аллокаторам на английском языке.

https://youtu.be/naiLRcS3chU

Эта лекция продолжает наше обсуждение аллокаторов в C++. Мы начнём с идеи memory_resource и внезапно выясним, что полиморфизм времени выполнения оказывается неожиданно удобным инструментом для его реализации. Затем мы разбираем стандартные ресурсы, поставляемые библиотекой — такие как monotonic и multipool resources — и посмотрим, как они используются через polymorphic_allocator и контейнеры семейства PMR. Далее мы реализуем простой тестовый memory resource, чтобы посмотреть, как именно проходят выделения памяти через PMR и что такое стандартный ресурс по умолчанию. После этого, на примере известного примера Пабло Халперна с односвязным списком, мы разберём, как аллокаторы взаимодействуют с дизайном контейнеров, включая вопросы big-five и правила распространения аллокаторов. В конце мы проведём сравнение стоимости разработки при различных подходах к абстракции аллокатора.

00:00 Introduction: runtime polymorphism for memory_resource
06:15 Standard resources: monotonic and multipool
12:15 Polymorphic allocator and PMR containers
19:16 Test memory_resource: PMR and the default resource
25:52 Halpern example: slist and its design details
31:40 Allocators and the Big Five for slist
40:22 Exception safety strikes back
46:00 Preserving noexcept in the move constructor
53:06 Why are we not afraid of virtual calls?
56:53 Halpern's table, final thoughts, and bibliography

#cpp_postgraduate
YouTube Lecture 16. Allocators II: Memory Resources and PMR (MIPT, 2025-2026). Master's degree lectures at MIPT on modern C++ in English. Department of Microprocessor Technologies. This lecture continues our discussion of allocators in C++. We begin with the idea of memory_resource and soon discover that runtime polymorphism turns…
  • 🔥 33
  • ❤ 10
  • 👍 6
  • 🥰 2
  • 🤮 2
More from @cpp_lects_rus
  1. Sep 22, 2026В четверг вечером провожу встречу со студентами и преподавателями ВШЭ. В планах: короткий…
  2. Sep 19, 2026Многие люди, прошедшие мой базовый курс языка C спрашивали -- а что дальше. Ведь мир языка…
  3. Sep 12, 2026Участвую в Ghost in the Code, рассылке YADRO о работе с легаси на C++. Удивительно ламповы…
  4. Sep 10, 2026Выложили доклад моего аспиранта и коллеги Владислава Белова @sick_hoof по алиасингу памяти…
  5. Sep 5, 2026Мне начали кидать в личку всякие странные видео из бентосных интернетов, появляющиеся (сей…
  6. Sep 3, 2026Выложили доклад моего студента и коллеги Саши Романова про рефлексию в C++. С моей точки з…
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →