Threads en C bajo Unix

Iniciado por kaiserr, 31 Diciembre 2013, 02:40 AM

0 Miembros y 1 Visitante están viendo este tema.

kaiserr

Muy buenas!

Tengo que hacer un programa que cree un maximo de 10.000 threads y calculen una parte de la ecuacion del numero pi y luego el proceso padre sume todos los resultados para obtener el numero pi.
El funcionamiento es lo de menos.

El problema que tengo es que en algunos ordenadores no admite 10.000 threads, por lo tanto "me veo obligado" a utilizar threads con el atributo detached... Por lo tanto no se guarda informacion de los thread, pero para que el padre no finalice antes que cualquier otro thread necesito hacer un pthread_join, pero sin tener los ids de los threads no se me ocurre como podria hacer que el padre esperara a todos los threads.

Alguna idea?

Gracias!

amchacon

¿Has considerado que a lo mejor necesitas otro algoritmo?

10.000 threads me parece una animalada, sobre todo si los estás ejecutando al mismo tiempo, sin pausas de por medio.

Si tú intención es mejorar el rendimiento, no deberías pasar de 4-5 (recuerda que los procesadores no pasan de 4 núcleos).
Por favor, no me manden MP con dudas. Usen el foro, gracias.

¡Visita mi programa estrella!

Rar File Missing: Esteganografía en un Rar

kaiserr

Lo se, pero me lo piden así..
:-[