Я работаю на многопоточном сервере в c ++, используя boost-asio. В настоящее время я сталкиваюсь с проблемой дизайна, связанной со стиранием соединения.
У меня есть один экземпляр сервера, который содержит вектор объектов подключения. Эти соединения получают команды, которые я анализирую. В частности, одна команда имеет дело с отправкой данных на ВСЕ соединения в моем векторе.
Теперь, когда соединение разрывается, я в настоящее время стираю это соединение из вектора и вызываю деструктор. Похоже, что я столкнусь с проблемами, когда кто-то «SendAll» одновременно с кем-то «Disconnect».
Может ли кто-нибудь порекомендовать лучший дизайн или просто указать мне правильное направление? Любая помощь с благодарностью. Спасибо