0 / 0 / 0
Регистрация: 13.12.2013
Сообщений: 19
|
|
1 | |
Чат p2p TCP только логика?04.12.2015, 20:37. Показов 4754. Ответов 4
Метки нет (Все метки)
Здравствуйте подскажите пожалуйста логику написания p2p клиента который будет связываться с таким же клиентом принимать и передавать ему сообщения одновременно? Я думаю в направлении двухпоточного приложения один поток слушает, другой передает, или это можно сделать без многопоточности? оба потока должны слушать один порт и передавать на него же или как?? желательно без интерфейса конечно , но тут возникает проблема одновременного доступа к консоли, конечно можно использовать критическую секцию, но не будет ли из-за нее тормозить одновременный ввод/вывод.
По сути: Написание p2p чата, одно приложение запускаем 2 раза, то есть по сути 2 клиента, и они между собой общаются как лучше реализовать, по возможности опишите пообширнее пожалуйста???
0
|
04.12.2015, 20:37 | |
Ответы с готовыми решениями:
4
TCP чат работает только локально P2P видео чат P2P чат с использованием STUN P2p чат, что лучше? на чем? |
76 / 50 / 26
Регистрация: 22.02.2015
Сообщений: 306
|
|
10.12.2015, 08:16 | 2 |
sandanen, интересно как это два клиента друг друга увидят ? Тебе мастер-сервер нужен будет.
0
|
654 / 575 / 164
Регистрация: 13.12.2012
Сообщений: 2,124
|
|
10.12.2015, 16:36 | 3 |
Да можно, это называется мультеплексированный ввод - вывод
можно в одном, чтобы передавать нужна активность на запись, если передавать данные из консоли то активность на запись можно не проверять, данные всегда буду успевать уходить быстрее чем вы их отправляете, а такж е слушать сокет на чтение/, появилась активность - читаете возможно есть смысле сделать таким образом, что когда вводите данные не писать в консоль вывод(сохранять данные в буфере), как только ввод закончили, записать в вывод Добавлено через 1 минуту самый простой варинат я думаю такой, запускаете приложение, и пытаетесь приконекктится к какому то IP:порт, не получилось, сами становитесь сервером, т.е делаете listen, и по активности на сокете accept нового соединения
0
|
150 / 137 / 35
Регистрация: 29.07.2012
Сообщений: 709
|
|
12.12.2015, 14:47 | 4 |
Интересно как клиенты будут видеть друг друга, если у 99% клиентов будут простые IP, а не белые. Скорее всего они не увидят друг друга, только если они будут в одной сети.
0
|
Задачи выполнил, ушёл
27 / 30 / 7
Регистрация: 16.10.2015
Сообщений: 345
|
|
27.12.2015, 02:56 | 5 |
Они увидят друг друга, если будут находиться за Full Cone NAT со статическим IP ната.
Настоятельно рекомендую UDP, и проще и быстрее и гибче. Ну не гарантирует соединение, ну сделайте таймаут, это проще чем вникать в механику TCP, на UDP торрент сделали, чем Ваш чат хуже).
0
|
27.12.2015, 02:56 | |
27.12.2015, 02:56 | |
Помогаю со студенческими работами здесь
5
WCF-чат логика получения сообщений TCP чат TCP-Чат Чат на tcp/ip Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |