¿Por qué el segundo argumento de pthread_join () es un **, un puntero a un puntero?

Soy nuevo en usarpthread y tampoco tan familiarizado con punteros a punteros. ¿Podría alguien explicar por qué el segundo argumento depthread_join() es unvoid **. ¿Por qué está diseñado así?

int pthread_join(pthread_t thread, void **value_ptr);

Respuestas a la pregunta(1)

Su respuesta a la pregunta