crossplatform.ru

Здравствуйте, гость ( Вход | Регистрация )

2 страниц V  < 1 2  
Ответить в данную темуНачать новую тему
> Ошибки при асинхронных опирациях asio, асинхронный сервер TCP..
BRE
  опции профиля:
сообщение 28.12.2011, 20:48
Сообщение #11


Профессионал
*****

Группа: Участник
Сообщений: 1112
Регистрация: 6.3.2009
Из: Ростов-на-Дону
Пользователь №: 591

Спасибо сказали: 264 раз(а)




Репутация:   44  


Цитата(Гость_Алексей_* @ 28.12.2011, 21:22) *
Ага.)))

Значит используем boost::enable_shared_from_this в качестве предка Session.
В момент, когда нужно прервать работу и уничтожить объект Session, делаем для сокета shutdown, все активные (уже запущенные обработчики) сработают с error == operation_aborted и при получении этого кода, ты не будешь перезапускать обработчики. Ссылок на объект не останеться и он будет разрушен.

Сообщение отредактировал BRE - 28.12.2011, 21:43
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
Гость_Гость_Алексей_*_*
сообщение 29.12.2011, 10:42
Сообщение #12





Гости








    


Цитата(BRE @ 28.12.2011, 20:48) *
Значит используем boost::enable_shared_from_this в качестве предка Session.
В момент, когда нужно прервать работу и уничтожить объект Session, делаем для сокета shutdown, все активные (уже запущенные обработчики) сработают с error == operation_aborted и при получении этого кода, ты не будешь перезапускать обработчики. Ссылок на объект не останеться и он будет разрушен.


Наверно так и сделаю.
Спасибо BRE за помощь...
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение

2 страниц V  < 1 2
Быстрый ответОтветить в данную темуНачать новую тему
Теги
Нет тегов для показа


1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0




RSS Текстовая версия Сейчас: 23.4.2024, 22:13