quello che intendeva morsetto80 era eseguire piu' di un client sulla stessa macchina, quindi sarebbero processi diversi.
Che poi ogni client attivi altri thread per conto suo è un altro discorso
quello che intendeva morsetto80 era eseguire piu' di un client sulla stessa macchina, quindi sarebbero processi diversi.
Che poi ogni client attivi altri thread per conto suo è un altro discorso
morsetto80 non parlava dello stesso PC, ma di due PC distinti sulla stessa LAN. Quindi la porta è sempre la stessa (ad ogni modo è il server che ascolta sulla stessa porta ed il server esiste solo in una istanza in una sola macchina).
Ciascun client si collega verso un server (IP) e una porta (sempre la stessa), ma esce mostrando un IP e una porta, che non c'entrano nulla, ovviamente, con quelli del server.
Il server mantiene una lista di client connessi (una lista di thread, ciascuno dei quali gestisce una connessione con una socket).
Il problema della rete viene automaticamente risolto dal router della rete stessa: a te non interessa sapere che due PC sono nella stessa rete, è il router che si gestisce gli indirizzi IP interni (utilizzando porte virtuali differenti): tu hai due socket collegate a due client che escono con lo stesso indirizzo IP, ma hanno due porte differenti (ma tutto questo è assolutamente trasparente).
Ciao.![]()
"Perchè spendere anche solo 5 dollari per un S.O., quando posso averne uno gratis e spendere quei 5 dollari per 5 bottiglie di birra?" [Jon "maddog" Hall]
Fatti non foste a viver come bruti, ma per seguir virtute e canoscenza