2013-03-09 3 views
-1

В моем приложении я хочу поделиться файлом между сервером и клиентом, для этого хочу создать два соединения сокета в одном потоке. Например, на сервере у нас есть поток «T», и он открыл два сокета типа «1234» и сокет no «3456» теперь на клиентском потоке «T2», я попытаюсь соединиться с этими сокетами. Так как я должен его реализовать.создать два соединения сокета в одном потоке

сервер:

thread 
{ 
wait at socket "1234" 
wait at socket "3456" 
} 

КЛИЕНТ СТОРОНА: (т. Е каждый сокет будет передавать данные в определенном порядке)

Thread 
{ 
connect with socket no "1234" 
connect with socket no "3456" 
} 
+0

Что вы пробовали и почему это не сработало? Например, когда вы googled что-то вроде «java socket tutorial» и сотни релевантных ссылок появились ... что с ними было не полезно? – mah

+0

@mah спасибо, дорогой, на самом деле я спрашиваю, могу ли я общаться с двумя одноранговыми узлами, используя только один поток для соединения, или мне нужно создавать разные потоки для каждого подключения сокетов ... помогите –

+0

. Это проще, если вы используете двух потоков, чтобы они могли работать независимо. Вы можете сделать эту работу одним потоком, если ваш протокол является очень конкретным и выполняется правильно, но это часто может быть сложнее, чем управление вторым потоком. – mah

ответ

0

если вы хорошо реализован протокол, да один поток должен работать. но вы можете сделать это, используя только одно соединение сокета. что является основным моментом создания двух сокетов? и каково отношение к андроиду?

кроме того; вы определенно должны будете задать свой вопрос, иначе, похоже, вопрос скоро будет закрыт.

+0

Фактически в одном сокете я отправляю некоторые переменные условия, а в другом сокете я отправляю данные файла. поэтому, когда я вышлю переменную условия (данные) в первом соединении сокета, и она встретит желание, то во втором соединении я отправлю файл. главное, что я могу создать два соединения сокета в одном потоке и –

Смежные вопросы