Consulta la documentazione di _beginthread e _endthread sull'MSDN..
invece di
avraicodice:pid = fork(); if(pid == -1) /*errore*/; if(pid == 0) exit(processa_richiesta(socket));
e la processa_richiesta dovrebbe essere del tipocodice:thread = _beginthread(processa_richiesta, 0, socket); if(thread == -1) /*errore*/;
codice:void processa_richiesta(void*param) { SOCKET socket = (SOCKET)param; /* processa la richiesta */ _endthread(); }