![]() |
|
|
![]()
|
|
| Filin88 |
|
||||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 65 Регистрация: 10.4.2008 Репутация: нет Всего: нет |
Здравствуйте!
Есть сервис с несколькими рабочими потоками. Хотел, чтобы TCP-сервер принимал входящие соединения в отдельном потоке. Однако при коннекта клиента к серверу вызывается слот "NewConnection" в потоке кутэсервиса, а не в отдельном потоке TCP-сервера, что делает невозможным отправить ответ клиенту. Код TCP-сервера
Пробовал разные варианты создания сервера, но все равно вызов идет из кутэсервиса. Хотелось бы сделать отдельный поток, так как кол-во клиентов заранее неизвестно, но будет только увеличиваться. Но я смотрю, что от потока кутэсервиса никуда не деться. Можно ли это вообще разрулить? |
||||
|
|||||
| bsa |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 9185 Регистрация: 6.4.2006 Где: Москва, Россия Репутация: 24 Всего: 196 |
Filin88, добавь в начало TCP_Server_thd::run(): moveToThread(this);
|
|||
|
||||
| Filin88 |
|
||||||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 65 Регистрация: 10.4.2008 Репутация: нет Всего: нет |
Добавил. теперь функция выглядит так:
Теперь на строчке "moveToThread(this);" Output выдает:
|
||||||
|
|||||||
| Guinness |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 310 Регистрация: 21.6.2009 Где: Зеленоград Репутация: 2 Всего: 10 |
||||
|
||||
| Filin88 |
|
||||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 65 Регистрация: 10.4.2008 Репутация: нет Всего: нет |
Заработало! Вот как выглядит рабочий вариант:
Сервис запускает рабочий цикл и сервер
Код сервера:
Guinness, bsa спасибо! Это сообщение отредактировал(а) Filin88 - 16.4.2014, 13:30 |
||||
|
|||||
![]()
|
| Правила форума "С/С++: Кроссплатформенное программирование, QT/Gtk+/wxWidgets" | |
|
|
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, JackYF, Любитель. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | С/С++: Кроссплатформенное программирование, Qt/Gtk+/wxWidgets | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |