|
как научить TcpListener видеть нескольких клиентов?
|
|||
---|---|---|---|
#18+
Подскажите, как научить TcpListener устанавливать соединение с несколькими клиентами. У меня такой код: ....... //Открываем порт, запускаем TcpListener int portNumber = 4000; TcpListener tcpListener = new TcpListener(portNumber); tcpListener.Start(); Console.WriteLine("Ожидание соединения...."); //Слушаем сеть и устанавливаем соединение TcpClient tcpClient = tcpListener.AcceptTcpClient(); Console.WriteLine("Соединение установлено."); networkStream = tcpClient.GetStream(); ....... В этом случае TcpListener обрабатывает только одного (первого) клиента, который подключился к выделенному порту. Можно ли сделать так, чтобы после установления соединения TcpListener'а с одним клиентом он продолжал слушать сеть и обрабатывал запросы на подключение (к этому же порту) других клиентов? ... |
|||
:
Нравится:
Не нравится:
|
|||
21.07.2004, 16:17 |
|
как научить TcpListener видеть нескольких клиентов?
|
|||
---|---|---|---|
#18+
тоже кстати волнует эта проблема, может кто нибудь все подскажет ? ... |
|||
:
Нравится:
Не нравится:
|
|||
23.07.2008, 19:57 |
|
как научить TcpListener видеть нескольких клиентов?
|
|||
---|---|---|---|
#18+
новичек C#тоже кстати волнует эта проблема, может кто нибудь все подскажет ? Если коротко - создается класс - который принимает подключившегося клиента, создает в отдельном потоке процесс, который будет с клиентом взаимодействовать, и запускает этот поток. Сам же продолжает ждать следующего клиента. Можно сделать без многопоточности (если клиентов не будет много) - по тому же принципу - получив вызов от клиента, текущий TcpListener сохраняется в список, взамен содается новый, свободный, А сам список подключенных TcpListener переодически опрашивается - получено что-то от клиента или нет... ... |
|||
:
Нравится:
Не нравится:
|
|||
23.07.2008, 20:11 |
|
как научить TcpListener видеть нескольких клиентов?
|
|||
---|---|---|---|
#18+
D129который будет с клиентом взаимодействовать - *** - , и запускает этот поток. забыл написать " передает этому потоку подключенный TcpListener " ... |
|||
:
Нравится:
Не нравится:
|
|||
23.07.2008, 20:13 |
|
как научить TcpListener видеть нескольких клиентов?
|
|||
---|---|---|---|
#18+
D129А сам список подключенных TcpListener переодически опрашивается - получено что-то от клиента или нет... Не понял, для чего вам нужен "список TcpListener"? TcpListener достаточно одного. А затем передаете каждый TcpClient в свой отдельный поток или ставите в очередь в пул потоков. То есть, на примере топикстартера: Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19.
... |
|||
:
Нравится:
Не нравится:
|
|||
23.07.2008, 21:40 |
|
как научить TcpListener видеть нескольких клиентов?
|
|||
---|---|---|---|
#18+
Roman S. Golubin D129А сам список подключенных TcpListener переодически опрашивается - получено что-то от клиента или нет... Не понял, для чего вам нужен "список TcpListener"? TcpListener достаточно одного. А затем передаете каждый TcpClient в свой отдельный поток или ставите в очередь в пул потоков. Да, я это и хотел сказать. ... |
|||
:
Нравится:
Не нравится:
|
|||
24.07.2008, 11:14 |
|
как научить TcpListener видеть нескольких клиентов?
|
|||
---|---|---|---|
#18+
Roman S. Golubin Спс за пример, но проявлю немного наглости, а как с NetworkStream считать все данные и тогда, и как на стороне клиента отаслать данные серверу. Зарание благодарю если даже и не захочешь ответить на столь наглую простбу ))) ... |
|||
:
Нравится:
Не нравится:
|
|||
30.05.2014, 07:18 |
|
как научить TcpListener видеть нескольких клиентов?
|
|||
---|---|---|---|
#18+
Viktor12345NetworkStream считать все данные и тогда, и как на стороне клиента отаслать данные серверу А вы не умеете писать и читать данные в обычные потоки? NetworkStream ненамного отличается от них по поведению. ... |
|||
:
Нравится:
Не нравится:
|
|||
30.05.2014, 11:46 |
|
|
start [/forum/topic.php?fid=20&msg=35448225&tid=1402872]: |
0ms |
get settings: |
9ms |
get forum list: |
15ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
38ms |
get topic data: |
9ms |
get forum data: |
2ms |
get page messages: |
48ms |
get tp. blocked users: |
1ms |
others: | 15ms |
total: | 145ms |
0 / 0 |