Cours du langage java syntaxe et exemples
Résumé
Définition
Une thread (appelée aussi processus léger ou activité) est une suite d'instructions à l'intérieur d'un process.
Les programmes qui utilisent plusieurs threads sont dits multithreadés.
Syntaxe
Les threads peuvent être créés comme instance d'une classe dérivée de la classe Thread. Elles sont lancées par la méthode start(), qui demande à l'ordonanceur de thread de lancer la méthode run() de la thread. Cette méthode run() doit être implantée dans le programme.
Premier exemple
class DeuxThreadAsynchrones {
public static void main(String args[ ]) {
new UneThread("la thread 1").start();
new UneThread("la seconde thread").start();
}
}
class UneThread extends Thread {
public UneThread(String str) {
super(str);
}
public void run() {
for (int i=0; i<10; i++) {
System.out.println(i+" "+getName());
try {sleep((int)(Math.random()*10));}
catch (InterruptedException e){}
}
System.out.println(getName()+" est finie");
}
}
une exécution
% java DeuxThreadAsynchrones
0 la thread 1
0 la seconde thread
1 la thread 1
2 la thread 1
1 la seconde thread
3 la thread 1
4 la thread 1
5 la thread 1
6 la thread 1
7 la thread 1
2 la seconde thread
3 la seconde thread
4 la seconde thread
8 la thread 1
5 la seconde thread
9 la thread 1
6 la seconde thread
la thread 1 est finie
7 la seconde thread
8 la seconde thread
9 la seconde thread
la seconde thread est finie
Une classe "threadée"
C'est une classe qui implémente une thread.
Syntaxiquement on la construit :
- ou bien comme classe dérivée de la classe Thread. Par exemple
class MaClasseThread extends Thread {
•••
}
- ou bien comme implémentation de l'interface Runnable.
class MaClasseThread implements Runnable {
•••
}
Cette dernière solution est la seule possible pour une applet "threadée" puisque Java ne supporte pas l'héritage multiple :
public class MonAppletThread extends Applet implements
Runnable {
•••
}
- Format
- Domaine
- Cours JAVA/J2EE
- Publié le
- 29 août 2016
- Vues
- 14
Ressources liées
La programmation orientée objet création d’une classe et de ses membres
L’API JPA et la gestion des entités
Programmation Orientée Objet Langage JAVA
Commentaires (0)
Connectez-vous pour laisser un commentaire.
Soyez le premier à commenter
Partagez votre avis sur ce document — questions, retours ou votre propre expérience.