@Sazoks

Нормально ли создавать несколько сокетов по одному дескриптору?

У меня есть несколько потоков. От каждого из них может прийти сообщение. Это сообщение необходимо разослать остальным клиентам через их сокеты.
Я сделал так: в пространстве, где хранятся сами потоки, я сохраняю их дескрипторы в специальный массив. Затем, когда от кого-то приходит сообщение, я вызываю метод рассылки этого сообщения другим сокетам, а именно создаю в цикле сокеты по этим самым дескрипторам, хранящимся в общем пространстве, и уже через этот сокет, созданный в этом потоке, пытаюсь отправить сообщение, но в итоге мне выдает ошибку:
QSocketNotifier: Multiple socket notifiers for same socket 972 and type Read
и программа падает... Выдает как раз на том месте, где я устанавливаю дескриптор.
Скажите, пожалуйста, в чем ошибка моих суждений?
При подключении клиента и выделении потока я так и делаю: беру следующее подключение, беру сокет и передаю его в объект, который затем moveToThread().
Но здесь, почему-то, не работает.
  • Вопрос задан
  • 56 просмотров
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы