Bonjour, j'ai un programme en c.
Je ne rencontre aucun problème au niveau de l'utilisation des mutexs et autres.
Cependant, je ne trouve pas d'algorithme satisfaisant :
J'ai des séries de nombres et j'essaye de déterminer lesquelles sont "bonnes" et lesquelles sont "mauvaises". Pour cela, j'utilise 2 algorithmes de tri.
-Tout d'abord, sur chaque série de nombre j'applique une fonction qui est indépendante des autres séries (celle-la ne pose aucun problème).
-Puis, pour chaque "solution" du premier algorithme, je dois comparée la série à celles ayant déjà passé les 2 tris.
Chaque série étant très rapide a trier (env 5 millisecondes mais il y peut avoir jusqu'à 5 000 000 série, chaque thread traite plusieurs série).
Le deuxième tri nécessite la lecture de toutes les solutions déjà trouvées, puis dans le cas où cette série est solution, il me faut la stocker dans ce même tableau.
Je ne connais pas la taille de mon tableau de départ (je l'alloue au fur et a mesure avec realloc). Où mettre les mutexs (en gardant le multi-threading efficace) pour que le 2eme tri s'effectue correctement ?
Je peux vous donner le code du programme en c de base et de celui multithreadé (que pour le premier tri) si nécessaire.
Partager