Red de conocimiento informático - Problemas con los teléfonos móviles - ¿Cómo bloquea la unión de hilos el hilo principal?

¿Cómo bloquea la unión de hilos el hilo principal?

Así es, la función pthread_join() es utilizada principalmente por el subproceso principal en el desarrollo de subprocesos múltiples para obtener el estado final del subproceso con el fin de reciclar los recursos del subproceso. Pero a veces sucede que después de llamar a pthread_join(), el subproceso todavía se está ejecutando, por lo que la persona que llama (la que llama a pthread_join) puede estar bloqueada. En este momento, puede llamar a phtread_detach() para crear el subproceso. sin bloqueo y regresa inmediatamente. Esto establece el estado del subproceso secundario en desconectado y todos los recursos se liberarán automáticamente una vez que finalice el subproceso. En el hilo secundario, use pthread_detach(pthread_self()). En el hilo principal, llame a pthread_detach(thread_id)//(sin bloqueo, puede regresar inmediatamente). Todos configuran el estado del hilo secundario en desconectado, y luego el. El hilo liberará automáticamente todos los recursos.