Bonjour,

Je travail sur un projet personnel utilisant une raspberry pi 2. J'aimerai pouvoir lancer deux fonctions en parallèles afin d'améliorer les performances de mon programme. Ex :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
 
while(1)
{
//coeur 1 du processeur
fonction_1()
 
//coeur 2 du processeur
fonction_2()
 
//Attente de la fin d'execution des deux premières fonctions puis j'execute une troisième fonction
fonction_3()
}
J'ai testé le code suivant en utilisant OpenMP, mais j'ai pas l'impression que cela fonction:

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
 
 while(!fin)
    {   
#pragma omp parallel
      {
#pragma omp sections
	{
	  sleep(10);
	  printf("ok\n");
	}
#pragma omp sections
	{
	  sleep(3);
	  printf("ok2\n");
	}
      }
}
Quand je teste j'ai l'impression d'avoir quelque chose de séquentiel et pas de parallèle, j'obtiens le résultat suivant:
// attente 10s
ok
//attente 3s
ok2

alors que je voudrais :
//debut de l'attente des 10s et des 3s
ok2
ok

merci d'avance pour votre aide, si je ne suis pas claire n'hésitez pas

Alex