Estoy un poco confundido acerca de la orden de limpieza cuando usa PThreads con respecto a la cancelación. Normalmente, si el hilo está desacoplado, se limpia automáticamente cuando termina. Si no está separado, debe unirse a él para reclamar los recursos del sistema.¿Necesitas unirte a un hilo cancelado? (pthreads)
El libro de texto que estoy estados lectura de la siguiente manera extraña, que suena como unión es opcional en relación con la cancelación:
"Si lo que necesita saber cuando el hilo en realidad ha terminado, debe unirse con ella llamando a pthread_join después de cancelarlo ".
Entonces, ¿necesito unirme a un hilo cancelado para liberar sus recursos? Si no, ¿por qué?
¿Se convertiría en un hilo zombie si se hubiera configurado en modo separado antes de ser cancelado? o debería hacer una nueva pregunta: p –
@ w00te Depende de usted. Pero la cita dice "* si el hilo no se separó *". Si suelta un hilo, no hay necesidad (** ni forma **) de unirlo. Una vez que separe un hilo, no hay forma de volver a unirlo. – cnicutar
El estándar de Posix no habla de hilos de zombies, pero si entiendo el término correctamente, un hilo que se ha separado nunca se convertirá en un zombi. (Lógicamente, separar un hilo tiene el mismo efecto que decirle al sistema que se una por usted, tan pronto como termine). –