La programmation parallèle en Java
Imene LAHYANI
1
Rappel
Prog Sequentielle
Tache 1;
Tache 2 ;
Tache 3 ;
Prog Sequentielle
X=x+1;
Y=y+6 ;
X=x-9;
2
Processus lourd
Processus leger1
Processus leger2
Processus leger3
Zone mémoire partagée
3
Concepts de base
Un processus est un programme qui tourne en cours
d’exécution et qui dispose de ses propres ressources
mémoire.
Un processus possède une ou plusieurs unités d’exécution
appelé Threads
Un thread est un flux séquentiel de contrôle à l’intérieur
d’un processus
Un thread est un processus léger
4
Création et lancement (1/2)
Java offre la possibilité de faire des traitement parallèle grâce à la classe
Thread.
La classe Thread exécute les instructions de sa méthode run()
Thread
run()
class MyThread extends Thread {
public void run() {
//......
}
MyThread }
run() Création et lancement (démarrage) d’un objet Thread:
MyThread a = new MyThread();
5 a.start();
Création et lancement (2/2)
1 iere méthode de création de thread
1/ Créer une classe héritant de Thread
2/ Surcharger la méthode Thread.run()
3/ Créer une instance de la classe
4/ Appeler la méthode start () sur cette instance
N’oubliez pas d’importer Java.lang.thread
6
Exemple
public class Test1 extends Thread
{Test1(String nom)
{super(nom);}
public void run()
{ for(int i=0; i<10;i++)
System.out.println(getName());}}// fin thread
Class test {
public static void main (String args[])
{ Test1 T1= new Test1 ("Test1");
Test1 T2= new Test1 ("Test2");
T1.start();
T2.start();
}
}