Re: Пример задачи ?
От: so5team https://stiffstream.com
Дата: 20.05.25 04:36
Оценка: 16 (2) +1
Здравствуйте, LaptevVV, Вы писали:

LVV>Может ли уважаемый ALL привести примеры задач, в которых без шаред_птр никак не обойтись ?


У нас в RESTinio объект request создается самим RESTinio на контексте одной из IO-нитей. Затем этот объект отдается в пользовательский request_handler, а пользовательский request_handler может делегировать обработку запроса кому-то еще (подробнее здесь). И получается два владельца у request-а: и RESTinio, и пользователь. Причем, поскольку обработка асинхронная и может занять больше времени, чем это позволяет RESTinio, то в таком случае RESTinio у себя удаляет информацию о request-е. Но сам объект request остается жить, т.к. указатель на него еще есть у пользователя.

В такой ситуации shared_ptr является простым и достаточно эффективным решением проблемы совместного владения объектом request.
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.