Sie sind auf Seite 1von 2

Institut International de Technologie Année universitaire : 2018/2019

TP en programmation Concurrente et Parallèle


Exercice 1
public class TwoThread extends Thread {
public void run() {
for ( int i = 0; i < 10; i++ ) {
System.out.println("New thread");
}
}

public static void main(String[] args) {


TwoThread tt = new TwoThread();
tt.start();

for ( int i = 0; i < 10; i++ ) {


System.out.println("Main thread");
}
}
}

1/Quel est l’output de l’algorithme suivant ?


2/Faire les changements nécessaires pour afficher le nom du Thread
3/ Afficher à la fin « L exécution est terminée »
Exercice 2
Écrivez un programme Java dont le thread principal lance et nomme 4 nouveaux threads A, B, C et D
en utilisant la classe Thread.
Chaque thread ainsi créé doit exécuter :
- Attendre un temps aléatoire,
- Puis afficher son nom.
Le thread principal devra attendre la fin de l’exécution des 4 threads créés avant de terminer son exécution
en affichant (fin d’exécution).
2. Répétez la question 1 en utilisant l’interface Runnable.

Exercice 2
1. Écrivez une classe Compte permettant de gérer des comptes bancaires. Cette classe contient un seul
attribut contenu et les méthodes suivantes :
— Un constructeur permettant d’initialiser le contenu du compte ;
— Une méthode afficher permettant d’afficher le contenu du compte courant ;
— Une méthode getContenu qui retourne le contenu du compte ;
— Une méthode modifier qui ajoute une somme (qui peut être négative) au contenu du compte.
2. Écrivez un thread Operation qui accède à un compte et ayant comme attribut son nom qui indique le
type de l’opération (retrait, dépôt) et une variable somme (qui peut être négative) utilisée pour mettre
à jour le compte. Lors de sa création, le thread Operation récupère son nom et initialise la valeur de
l’attribut somme. Au cours de son exécution, chaque fois le thread modifie le compte en faisant appel
à la méthode modifier, il affiche son nom et le contenu du compte et puis il attend un temps aléatoire
compris entre 0 et 100 ms pour donner la main aux autres threads.
3. Écrivez la méthode main pour tester les threads. Initialisez le compte à 500, affichez le contenu de
compte avant la création des threads. Créez et démarrez deux threads appelés "Ajouter" et "Retrancher",
le premier ajoute la valeur 200 au compte et le deuxième retranche 100 du compte. Vérifiez le bon
fonctionnement de la gestion du compte crée.
4. Testez le bon fonctionnement de ce programme en gérant plusieurs comptes bancaires (plusieurs
comptes et opérations).

Das könnte Ihnen auch gefallen