слабое_произведение, make_shared и освобождение памяти

Блок управленияshared_ptr сохраняется, пока есть хотя бы одинweak_ptr подарок. Если общий указатель был создан сmake_shared это означает, что вся память объекта сохраняется. (Сам объект должным образом разрушен, но поскольку блок управления и память для объекта были выделены в один блок, какmake_shared они могут быть освобождены только вместе.)

Правильно ли мое понимание?

Кажется, что такое поведение представляет собой проблему, например, в знаменитом"пример кеша", Память для объектов будет храниться всегда.

Это проблема в каких-то практических ситуациях? Долженshared_ptr быть создан с помощью конструктора в такой ситуации (большой объект и намерение использоватьweak_ptrs)?

Ответы на вопрос(2)

Ваш ответ на вопрос