Жизненный цикл этого в асинхронной функции С++C++

Программы на C++. Форум разработчиков
Anonymous
Жизненный цикл этого в асинхронной функции С++

Сообщение Anonymous »

Я знаю, что в асинхронных функциях C++ их аргументы действительны на протяжении всего времени их выполнения. Метод-член класса, который также передается асинхронной функции, будет неявно иметь this в качестве первого аргумента. Проблема в том, что это указатель и не имеет понятия жизненного цикла. Лично я предполагаю, что во время выполнения сам объект может быть разрушен, и это может стать диким указателем.

[*]Прав ли я в своих предположениях выше?< /li>
Как гарантировать, что этот не будет разрушен в течение всего выполнения метода. Раньше у меня были классы, наследующие от std::enable_shared_from_this, чтобы получить общий_ptr этого, но это имеет огромное ограничение, которое требует, чтобы этот сам был общим_ptr.


Подробнее здесь: https://stackoverflow.com/questions/791 ... c-function

Вернуться в «C++»