Ciao a tutti, ho un problema con la funzione pthread_create(). La chiamata ritorna un valore positivo, ma la routine specificata non viene eseguita.Ecco il codice:
Il risultato è che ho la stampa di "Thread creato", ma la stampa inserita nella prima riga dopo le dichiarazioni della funzione worker non viene eseguita.codice:pthread_t t_id; //acp è un intero, ovvero la socket sul quale il thread legge un messaggio //worker è la routine da eseguire. thread = pthread_create(&t_id, NULL, &worker, (void*)acp); if(thread == -1){ perror("Crezione thread"); return -1; } printf("Thread creato\n"); pthread_detach(t_id);![]()
Com'è possibile?![]()

Ecco il codice:
Rispondi quotando