Java:quel output est bonne?
Résolu/Fermé
A voir également:
- Java:quel output est bonne?
- Waptrick java football - Télécharger - Jeux vidéo
- Java apk - Télécharger - Langages
- Jeux java itel football - Télécharger - Jeux vidéo
- Java jre - Télécharger - Langages
- Jeux java itel 5360 ✓ - Forum Mobile
3 réponses
Terminalex
Messages postés
166
Date d'inscription
samedi 30 octobre 2010
Statut
Membre
Dernière intervention
23 juillet 2012
57
14 juil. 2012 à 09:34
14 juil. 2012 à 09:34
le output d'eclipse est bon car celui du livre utilise une boucle sur l'ensemble du programme (on voit que la variable A a plusieurs fois la valeur 1)
est-tu sur d'avoir bien copié le livre?
est-tu sur d'avoir bien copié le livre?
KX
Messages postés
16733
Date d'inscription
samedi 31 mai 2008
Statut
Modérateur
Dernière intervention
31 janvier 2024
3 015
Modifié par KX le 23/07/2012 à 09:37
Modifié par KX le 23/07/2012 à 09:37
Les threads s'exécutent par définition en parallèle sur le même processus, en conséquence il est impossible de prévoir l'ordre d'exécution des instructions, qui pourront a priori être différentes à chaque exécution.
Dans ton exemple, les opérations "start" sont très courtes, donc elles sont terminées avant que le "new" suivant ne se termine (la création de l'objet est une opération plus longue qu'une boucle vide de 1 à 5), donc les threads sont imperceptibles.
Tu peux essayer de d'abord créer tous tes threads (opérations "longues") avant de tous les lancer d'un coup, ce qui te permettra d'observer le parallélisme sur les boucles.
Remarque : dans ton "output du livre", il y a six threads (deux de chaque type), alors qu'il n'y en a que trois (un de chaque) dans ton "output d'eclipse"
Dans ton exemple, les opérations "start" sont très courtes, donc elles sont terminées avant que le "new" suivant ne se termine (la création de l'objet est une opération plus longue qu'une boucle vide de 1 à 5), donc les threads sont imperceptibles.
Tu peux essayer de d'abord créer tous tes threads (opérations "longues") avant de tous les lancer d'un coup, ce qui te permettra d'observer le parallélisme sur les boucles.
Remarque : dans ton "output du livre", il y a six threads (deux de chaque type), alors qu'il n'y en a que trois (un de chaque) dans ton "output d'eclipse"
public static void main(String [] args) { A a1 = new A(), a2 = new A(); B b1 = new B(), b2 = new B(); C c1 = new C(), c2 = new C(); a1.start(); b1.start(); c1.start(); a2.start(); b2.start(); c2.start(); }La confiance n'exclut pas le contrôle
22 juil. 2012 à 22:42
23 juil. 2012 à 09:19