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

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

Сообщение Anonymous »

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

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


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

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

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