Некоторые антипаттерны при использовании std::enablesharedfrom_this:
Вызов sharedfromthis для объекта, который не управляется sharedptr. www.nextptr.com stackoverflow.com В такой ситуации может возникнуть исключение std::badweakptr, так как встроенный weakthis не инициализирован. www.nextptr.com
Вызов sharedfromthis в конструкторе. www.nextptr.com В этом случае также может появиться исключение std::badweakptr, так как встроенный weak_this ещё не инициализирован. www.nextptr.com
Вызов sharedfromthis, когда класс не публично наследует std::enablesharedfromthis. www.nextptr.com Частное (или защищённое) наследование предотвращает инициализацию weakthis, и это может пройти незамеченным без предупреждений компилятора. www.nextptr.com
Возникновение антипаттерна «Зомби». habr.com В результате вызова run_once() может появиться циклическая ссылка, и «Зомби» продолжит работу даже после выхода из области видимости. habr.com Для множества объектов, созданных в ходе работы программы, не будут вызваны деструкторы. habr.com
Примеры полезных ответов Поиска с Алисой на вопросы из разных сфер. Вопросы сгенерированы нейросетью YandexGPT для актуальных тем, которые определяются на базе обобщённых запросов к Поиску с Алисой.