|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
Опции темы | Поиск в этой теме |
06.11.2013, 21:10 | #1 |
Форумчанин
Регистрация: 30.12.2010
Сообщений: 280
|
Нужен совет по сокетам
Здравствуйте.
У меня есть код сервера который принимает только один запрос recv и дальше не работает Код:
Может функция другая есть или как-нибудь по другому создать цикл? Направьте меня в нужном направлении Спасибо за внимание. Последний раз редактировалось Stilet; 06.11.2013 в 21:49. |
06.11.2013, 21:54 | #2 |
Белик Виталий :)
Старожил
Регистрация: 23.07.2007
Сообщений: 57,097
|
Ну например засунь этот код в поток.
Да и потом, если это код сервера то не помешает использовать функции: http://msdn.microsoft.com/en-us/libr...=vs.85%29.aspx http://msdn.microsoft.com/en-us/libr...=vs.85%29.aspx
I'm learning to live...
|
07.11.2013, 13:17 | #3 |
Старожил
Регистрация: 13.07.2012
Сообщений: 6,342
|
По мне, так в *данном* коде надо вынести accept перед циклом.
А так, да, легче всего каждого клиента запускать в потоке, хотя это не лучший вариант. |
08.11.2013, 07:03 | #4 |
Форумчанин
Регистрация: 30.12.2010
Сообщений: 280
|
Мне не понятно, как можно вынести accept перед циклом? Ссылки которые были предложены Стилетом содержат обычные функции, у меня тоже в коде есть функция Листен, не стал её сюда выкладывать, выложил лишь цикл для сокращения кода.
Вот если я к примеру выношу accept за цикл, то при отправлении запроса клиентской программой (которая запускается отдельно от сервера) accept не срабатывает, так как вызывается сразу после запуска сервера. Пробовал создать двойной цикл и все равно ничего не получается=( |
08.11.2013, 10:17 | #5 |
Старожил
Регистрация: 13.07.2012
Сообщений: 6,342
|
Код:
Реально - два цикла, один делает accept и запускает потоки для каждого нового соединения и в этом потоке - второй цикл, который делает recv(). A еще лучше использовать select() и в зависимости от результатов делать accept, recv, send... |
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Нужен совет... | Gideon | Помощь студентам | 2 | 02.11.2012 20:18 |
нужен совет | titan2012 | HTML и CSS | 11 | 16.02.2012 00:47 |
Нужен совет | romkaP | Свободное общение | 10 | 26.12.2010 20:21 |
Нужен совет, просто совет | kardinal94 | Общие вопросы Delphi | 7 | 16.12.2010 22:16 |
Нужен совет | LAmeWax | Общие вопросы C/C++ | 1 | 13.11.2010 23:13 |