Tengo una pregunta sobre la programación de concurrencia C.pthread_join() y pthread_exit()
En la biblioteca pthread, el prototipo de pthread_join
es
int pthread_join(pthread_t tid, void **ret);
y el prototipo de pthread_exit
es:
void pthread_exit(void *ret);
así que estoy confundido, ¿por qué pthread_join
toma el valor de retorno del proceso como un puntero a un puntero void
de hilo cosechado, pero pthread_exit
solo toma un puntero void
del subproceso salido? Quiero decir, básicamente, son todos los valores de retorno de un hilo, ¿por qué hay una diferencia en el tipo?
Pero por qué definir ret en '' pthread_exit' un tipo void * ',' It'a siempre null' o algunos otros valores constantes – stonestrong