ycliper

Популярное

Музыка Кино и Анимация Автомобили Животные Спорт Путешествия Игры Юмор

Интересные видео

2025 Сериалы Трейлеры Новости Как сделать Видеоуроки Diy своими руками

Топ запросов

смотреть а4 schoolboy runaway турецкий сериал смотреть мультфильмы эдисон
Скачать

C++Now 2018: Arthur O'Dwyer “An Allocator is a Handle to a Heap”

Автор: CppNow

Загружено: 2018-05-18

Просмотров: 10879

Описание: http://cppnow.org
—
Presentation Slides, PDFs, Source Code and other presenter materials are available at: http://cppnow.org/history/2018/talks/
—
C++17 introduced the std::pmr framework. In this framework, a std::pmr::polymorphic_allocator<T> holds a pointer to a std::pmr::memory_resource. The memory resource is in charge of managing and organizing the heap itself, and the allocator object is just a thin "handle" pointing to the memory resource.

This is not just a convenient implementation strategy for std::pmr! Rather, this elucidates the true meaning of the Allocator concept which has existed, unchanged, since C++98. An Allocator is a handle to a MemoryResource. Even std::allocator can — and should — be viewed as a handle to a global singleton "heap", and not as a MemoryResource in its own right.

From this core insight we derive many corollaries, such as the need for allocator types to be lightweight and efficiently copyable, the fundamental impossibility of implementing an "in-place" std::vector via stupid allocator tricks, and the philosophical underpinnings of "rebinding."

We'll show at least two non-standard examples of types modeling Allocator that act as different kinds of handles to heaps: a `shmem_allocator` that holds a `shmem_ptr` to a memory resource, and a `shutdown_safe_allocator` that holds a `weak_ptr` to a memory resource.

Time permitting, we'll
discuss what we can expect from a "moved-from" allocator object
relate the notion of "handle" to neighboring notions such as "façade" and "adaptor"
suggest similarities between "allocator/heap" and "executor/execution-context"
—
Videos Filmed & Edited by Bash Films: http://www.BashFilms.com
---

*--*

---

Не удается загрузить Youtube-плеер. Проверьте блокировку Youtube в вашей сети.
Повторяем попытку...
C++Now 2018: Arthur O'Dwyer “An Allocator is a Handle to a Heap”

Поделиться в:

Доступные форматы для скачивания:

Скачать видео

  • Информация по загрузке:

Скачать аудио

Похожие видео

C++Now 2017: Peter Bindels “How to go to Google.com

C++Now 2017: Peter Bindels “How to go to Google.com"

CppCon 2018: Arthur O'Dwyer “An Allocator is a Handle to a Heap”

CppCon 2018: Arthur O'Dwyer “An Allocator is a Handle to a Heap”

C++Now 2018: David Sankel “C++17's std::pmr Comes With a Cost”

C++Now 2018: David Sankel “C++17's std::pmr Comes With a Cost”

C++Now 2018: Arthur O'Dwyer “The Best Type Traits that C++ Doesn't Have”

C++Now 2018: Arthur O'Dwyer “The Best Type Traits that C++ Doesn't Have”

What's a Memory Allocator Anyway? - Benjamin Feng

What's a Memory Allocator Anyway? - Benjamin Feng

C++Now 2018: You Can Do Better than std::unordered_map: New Improvements to Hash Table Performance

C++Now 2018: You Can Do Better than std::unordered_map: New Improvements to Hash Table Performance

CppCon 2017: Arthur O'Dwyer “dynamic_cast From Scratch”

CppCon 2017: Arthur O'Dwyer “dynamic_cast From Scratch”

Local (arena) Memory Allocators - John Lakos [ACCU 2017]

Local (arena) Memory Allocators - John Lakos [ACCU 2017]

C++Now 2017: Daniel Pfeifer “Effective CMake

C++Now 2017: Daniel Pfeifer “Effective CMake"

Back to Basics: Type Erasure - Arthur O'Dwyer - CppCon 2019

Back to Basics: Type Erasure - Arthur O'Dwyer - CppCon 2019

C++Now 2017: John Lakos

C++Now 2017: John Lakos "Local (“Arena”) Memory Allocators"

Taming dynamic memory - An introduction to custom allocators in C++ - Andreas Weis - code::dive 2018

Taming dynamic memory - An introduction to custom allocators in C++ - Andreas Weis - code::dive 2018

Почему реактивный двигатель не плавится? [Veritasium]

Почему реактивный двигатель не плавится? [Veritasium]

Как заговорить на любом языке? Главная ошибка 99% людей в изучении. Полиглот Дмитрий Петров.

Как заговорить на любом языке? Главная ошибка 99% людей в изучении. Полиглот Дмитрий Петров.

Deep House Mix 2024 | Deep House, Vocal House, Nu Disco, Chillout Mix by Diamond #3

Deep House Mix 2024 | Deep House, Vocal House, Nu Disco, Chillout Mix by Diamond #3

CppCon 2019: Arthur O'Dwyer “Back to Basics: Smart Pointers”

CppCon 2019: Arthur O'Dwyer “Back to Basics: Smart Pointers”

Extending std::execution - Implementing Custom Algorithms with Senders & Receivers - C++Now 2025

Extending std::execution - Implementing Custom Algorithms with Senders & Receivers - C++Now 2025

Музыка для работы за компьютером | Фоновая музыка для концентрации и продуктивности

Музыка для работы за компьютером | Фоновая музыка для концентрации и продуктивности

C++Now 2017: Bob Steagall “Testing the Limits of Allocator Awareness

C++Now 2017: Bob Steagall “Testing the Limits of Allocator Awareness"

Вся IT-база в ОДНОМ видео: Память, Процессор, Код

Вся IT-база в ОДНОМ видео: Память, Процессор, Код

© 2025 ycliper. Все права защищены.



  • Контакты
  • О нас
  • Политика конфиденциальности



Контакты для правообладателей: [email protected]