Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Распределённые приложения и сеть > TCP. один сервер много клиентов


Автор: BftS 2.10.2009, 13:05
Доброго дня!
Вопрос таков, как можно сделать, что бы один сервер мог принять сколько-угодно клиентов.

Почитав справочники я пришел к выводу что нужно использоывть либо TcpListener + Socket Или TcpListener + TCPclient
Собственно отсюда 1 вопрос, в чем различия данных вариантов и,  что, для чего лучше?

В итоге у меня вышла связка, НО она работает только с 1 клиентом. Те. клиент присоединился к серверу(обменивается данными спокойно), и после этого другой клиент уже не присоединяется. Даже если отключить первый клиент.

Знакомый сказал что должно работать если будет след. схема.
Listener.start(); -->> Когда получено соединение(ждем) -->> Обрабатываем данные
                                                                                             -->> listener.stop(); -->> и начинаем снова.
Код

while(true)
{
Listener.Start(); // слушаем
ClientSock = Listener.AcceptSocket(); // ожидаем сокет от клиента
if (ClientSock.Connected) // сокет пришел, обрабатываем инфу
                { } //Что-то делаем с информацией
Listener.Stop();
}


Но никакого эффекта это не возимело.
Собственно как с этим бороться?
Может ли такое TCP вообще?

Автор: Kison 2.10.2009, 13:11
Скачай книгу ".Net сетевое программирование для профессионалов" Ендрю Кровчек  смотри страницу 103 там даже пример есть.
 

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)