Slide 8
Slide 8 text
動的メモリ確保はもはや禁忌ではない?
std::pmr (polymorphic memory resource) でリアルタイム動的メモリ確保
- libc++で未実装 / cradleapps/realtime_memory (プライベート実装)
- 事前アロケーション、 single threaded, O(1)
- std::pmr::monotonic_buffer_resource,
std::pmr::unsynchronised_pool_resrouce, std::pmr_polymorphic_allocator
- copy constructorやmoveなどでallocatorはコピーされない(!)
- std::mapではなくstd::pmr::mapが用意されている
※tcmalloc、rpmalocなどモダンな汎用アロケーターもnon RT-safe
※原理原則は変わっていない
(これらはシステムレベルの確保/解放を行わない)