Ciao a tutti, vorrei chiedervi un consiglio sull'implementazione di un processo cliente. Questi deve leggere da un file N path sui quali connettersi per scambiare messaggi. Vorrei chiedervi: è più efficiente utilizzare un ciclo che richieda la connessione e lo scambio di messaggi per ogni socket, o utilizzare N processi forkati (o N threads) ognuno dei quali si occupa di una sola connessione? Faccio un esempio:

devo connettermi su "socket1.sck socket2.sck socket3.sck".

Mi conviene forkare 3 volte il processo padre, e ogni figlio si occupa della comunicazione su una socket (analogo il discorso con i thread), oppure utilizzare un ciclio del tipo:

while(nconnessioni != 0){
connect(connessione);
send();
receive();
nconnessioni--;
}

chiaramente le connessioni le metterò in un char**, cosicchè possa ciclare su questo array passando ogni volta una connessione diversa.