Ошибки при асинхронных опирациях asio, асинхронный сервер TCP.. |
Здравствуйте, гость ( Вход | Регистрация )
Ошибки при асинхронных опирациях asio, асинхронный сервер TCP.. |
BRE |
28.12.2011, 20:48
Сообщение
#11
|
Профессионал Группа: Участник Сообщений: 1112 Регистрация: 6.3.2009 Из: Ростов-на-Дону Пользователь №: 591 Спасибо сказали: 264 раз(а) Репутация: 44 |
Ага.))) Значит используем boost::enable_shared_from_this в качестве предка Session. В момент, когда нужно прервать работу и уничтожить объект Session, делаем для сокета shutdown, все активные (уже запущенные обработчики) сработают с error == operation_aborted и при получении этого кода, ты не будешь перезапускать обработчики. Ссылок на объект не останеться и он будет разрушен. Сообщение отредактировал BRE - 28.12.2011, 21:43 |
|
|
Гость_Гость_Алексей_*_* |
29.12.2011, 10:42
Сообщение
#12
|
Гости |
Значит используем boost::enable_shared_from_this в качестве предка Session. В момент, когда нужно прервать работу и уничтожить объект Session, делаем для сокета shutdown, все активные (уже запущенные обработчики) сработают с error == operation_aborted и при получении этого кода, ты не будешь перезапускать обработчики. Ссылок на объект не останеться и он будет разрушен. Наверно так и сделаю. Спасибо BRE за помощь... |
|
|
Текстовая версия | Сейчас: 22.11.2024, 11:03 |