Skip to content
Snippets Groups Projects
Commit 60fb88f7 authored by steven.liatti's avatar steven.liatti
Browse files

Update enonce

parent 035b285d
Branches
No related tags found
No related merge requests found
...@@ -409,10 +409,10 @@ document.getElementsByTagName("head")[0].appendChild(fileref) ...@@ -409,10 +409,10 @@ document.getElementsByTagName("head")[0].appendChild(fileref)
<ul> <ul>
<li>Le thread principal (fonction <code>main</code>) s’occupe seulement de gérer les arguments de la ligne de commande, initialiser les structures de données, et créer les threads.</li> <li>Le thread principal (fonction <code>main</code>) s’occupe seulement de gérer les arguments de la ligne de commande, initialiser les structures de données, et créer les threads.</li>
<li>Un thread est dédié à la gestion du clavier.</li> <li>Un thread est dédié à la gestion du clavier.</li>
<li>Un ou plusieurs threads <em>travailleurs</em> sont dédiés au calcul du prochain état des cellules : nouvelles positions (en fonction de la vitesse de la cellule) et <strong>détection de collisions</strong> entre certains éléments. Ces événements de collisions potentielles sont stockés dans une seule structure de données concurrente (file, pile, etc.). Il est <strong>important</strong> que tous les threads <em>travailleurs</em> déplacent leurs cellules assignées, puis s’attendent <strong>avant</strong> de réaliser la détection de collisions. Un thread traite une ou plusieurs cellules (de manière équitable).</li> <li>Un ou plusieurs threads <em>travailleurs</em> sont dédiés au calcul du prochain état des cellules : nouvelles positions (en fonction de la vitesse de la cellule), rebonds éventuels contre les bords et <strong>détection de collisions</strong> entre entités (cellules et particules). Ces événements de collisions potentielles sont stockés dans une seule structure de données concurrente (file, pile, etc.). Il est <strong>important</strong> que tous les threads <em>travailleurs</em> déplacent leurs cellules assignées, puis s’attendent <strong>avant</strong> de réaliser la détection de collisions. Un thread traite une ou plusieurs cellules (de manière équitable).</li>
<li>Un seul thread <em>collisionneur</em> est dédié au <strong>traitement des collisions</strong> entre certains éléments (lecture des événements de la liste concurrente) et à <strong>l’affichage</strong>.</li> <li>Un seul thread <em>collisionneur</em> est dédié au <strong>traitement des collisions</strong> entre entités (lecture des événements de la liste concurrente) et à <strong>l’affichage</strong>.</li>
</ul> </ul>
<p>Concernant les collisions, deux variantes sont possibles :</p> <p>Concernant les collisions entre cellules et particules, deux variantes sont possibles :</p>
<ol type="1"> <ol type="1">
<li>Chaque thread <em>travailleur</em> réalise uniquement la détection de collisions entre cellules et entre cellules et particules de nourriture, puis délègue totalement le traitement de ces collisions à l’unique thread <em>collisionneur</em>.</li> <li>Chaque thread <em>travailleur</em> réalise uniquement la détection de collisions entre cellules et entre cellules et particules de nourriture, puis délègue totalement le traitement de ces collisions à l’unique thread <em>collisionneur</em>.</li>
<li>Chaque thread <em>travailleur</em> détecte toutes les collisions, mais traite les collisions entre cellules et particules de nourriture. L’unique thread <em>collisionneur</em> ne traite en conséquences uniquement que les collisions entre cellules.</li> <li>Chaque thread <em>travailleur</em> détecte toutes les collisions, mais traite les collisions entre cellules et particules de nourriture. L’unique thread <em>collisionneur</em> ne traite en conséquences uniquement que les collisions entre cellules.</li>
No preview for this file type
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment