Ver Mensaje Individual
  #7 (permalink)  
Antiguo 09/03/2015, 15:59
Avatar de jc_moj
jc_moj
 
Fecha de Ingreso: septiembre-2009
Ubicación: Andalucía
Mensajes: 137
Antigüedad: 15 años, 2 meses
Puntos: 12
Respuesta: Uso de Threads en C

Hola

Bueno, no estoy muy puesto en este tema, por eso me intriga y me gusta me aclaréis.

Cita:
Iniciado por razpeitia Ver Mensaje
Otra vez te toparías con problemas con concurrencia al alterar el estado de srand al mismo tiempo. Esto es porque srand no es thread safe.

Por eso tienes que tener conocimiento sobre las funciones que usaras en los threads, por que puede resultar en algo que no deseas.
He modificado el código que pusiste arriba, poniendo el srand como primera línea del main, justo antes de crear los thread y tras ejecutar el programa varias veces, obtengo unos números aleatorios muy similares a dejando el srand en la función.

¿Al usar srand antes de crear los thread no queda ya la semilla establecida y por tanto, cada thread, lo pida cuando lo pida, obtiene ya un número aleatorio adecuado?

Saludos