Red de conocimientos turísticos - Información de alquiler - Acerca de la programación multiproceso en Linux

Acerca de la programación multiproceso en Linux

No se llama a la función de parada de espera del subproceso pthread_join

Después de generar el subproceso pthread_create, el subproceso principal se detiene primero sin esperar a que se detenga el subproceso.

Después de que se detiene el hilo principal, todo el programa se detiene y el hilo secundario finaliza cuando no hay printf.

Conclusión: No es que no hayas visto el resultado, sino que todo el programa antes del subproceso printf(".............\n") ; Se ha detenido.

#include lt;stdio.hgt;

#include lt;stdlib.hgt;

#include lt;sys/types.hgt;

#include lt;string.hgt;

#include lt;unistd.hgt;

#include lt;pthread.hgt;

# define FALSO -1

#define VERDADERO 0

void *shuchu( void *dumy )

{

int j; p>

printf(".............\n");

}

int main()

{

int i = 0;

int rc = 0;

int ret1

pthread_t p_thread1; /p>

if(0!=(ret1 = pthread_create(amp; p_thread1, NULL, shuchu, NULL))) printf("sfdfsdfi\n");

printf(" [d] \n", p_thread1);

pthread_join(p_thread1, NULL);

devuelve VERDADERO;

}