Purtroppo non sono molto pratico di programmazione socket e Linux, quindi non so rispondere alla tua domanda.
Comunque ti consiglio di dare un'occhiata qui:
http://www.cact.unile.it/facilities/...gapilse54.html
in particolare all'I/O Multiplexing.
Per quanto riguarda il thread in se, non so quante volte lo lanci e se ne lanci più di uno.
Una soluzione (magari temporanea) è di settare una variabile globale protetta da un mutex che impedisca il lancio di un nuovo thread se quello precedente non ha finito il suo compito. (in pratica dopo l'ultima recv() )

Rispondi quotando