Lección 9: hilos POSIX — creación y join
Un hilo (thread) es una unidad de ejecución ligera dentro de un proceso. En esta lección aprendemos a crear hilos con pthread_create, esperar a que terminen con pthread_join, y entender la diferencia fundamental entre un hilo y un proceso.
Un proceso es una fábrica; un hilo es un trabajador en la fábrica. Todos los trabajadores comparten el mismo almacén (memoria), pero cada uno trabaja de forma independiente.
- hilo (thread)
- Una unidad de ejecución independiente dentro de un proceso, que comparte la memoria y la tabla de descriptores de archivo con los demás hilos, pero tiene su propio stack y registros.
- pthread
- POSIX Threads — el estándar Unix para gestionar hilos, implementado en Linux a través de libpthread. La API incluye pthread_create, pthread_join y más.
- pthread_create
- Función para crear un hilo nuevo. Recibe un identificador de hilo, atributos, una función de inicio y un argumento. Devuelve 0 si tiene éxito.
- pthread_join
- Espera a que un hilo termine y libera sus recursos. Sin join, un hilo zombi permanece en memoria.
- TID (identificador de hilo)
- Identificador único de un hilo dentro de un proceso, devuelto por pthread_self() o almacenado en el pthread_t pasado a pthread_create.