Infatti: devi gestire i processi come ti ha spigato Marco...
Devi fare una cosa del tipo:codice:{ pid_t pid; int fd_della_socket pid = fork ( ); // forki il processo if ( pid == 0 ) { // codice eseguito dal paadre // fd_della_socket = connettiti alla porta 1... } else { // codice eseguito dal figlio // fd_della_socket = connettiti alla porta 2... } // codice eseguito da entrambi // ... }
Per maggiori info sulla fork: http://www.lilik.it/~mirko/gapil/gap...x81-510003.2.2
Puoi usare anche metodi alternativi alla fork, puoi ad esempio utilizzare i pthreads oppure puoi usare un solo processo e ascoltare entrambe le porte grazie alla select o alla poll, ma questo metodo e' sconsigliato perche' nei nanosecondi in cui leggi una socket non puoi fare altro (nemmeno leggere l'altra)...
![]()