probleme projet multithread
salut a tous , désolé de vous embeter avec ca , mais j'ai un projet a rendre , et je n'ai pas du tout compris le fonctionnement... je vous montre le principal du sujet :
Citation:
Le but de ce projet est de réaliser une application multithread qui implémente de manière fiable un algorithme de tri rapide (quicksort) parallèle.
Le projet consiste en un programme écrit en langage C, faisant usage des threads POSIX.
Le but de ce projet est de réaliser un prorgamme prenant deux arguments : nthreads et taille.
Le programme commence à remplir un tableau d'entiers de taille taille. La valeur des éléments du tableau entiers sera tirée au hasard entre 1 et une constante MAX que vous définirez. La taille du tableau peut être très grande (plusieurs dizaines de milliers d'éléments, par exemple).
Ensuite le programme crée nthreads-1 threads, et effectue le tri du tableau avec les nthreads threads existants, le thread principal (=exécutant la fonction main) inclus. A la fin de l'exécution du tri, le thread principal attend la fin des autres threads et vérifie que le tableau est bien trié.
alors ce que je n'ai pas compris :
- il veulent que j'utilise un tableau qui gere les taches pour les threads --> je ne vois pas du tout le principe de fonctionnement de ce tableau.
- je ne vois pas ce que chacuns des threads dois faire (comment distribuer le travail aux threads en partant d'un fonction recursive ??)
- enfin en gros j'ai rien compris.
si qqn a déjà fais ce genre de projet , est ce que il peut m'expliquer en gros comment ca dois fonctionner ? je ne demande pas de me faire le code , ca je me debrouillerai tres bien une fois que j'aurai saisi le principe du programme.
merci d'avance à ceux qui reponderons , je planche de mon coté , et je vous previens si j'ai compris quelque chose :)