Maison > Questions et réponses > le corps du texte
public static void main(String[] args){
new Thread(new Runnable() {
@Override
public void run() {
for (int i=0; i<10; i++){
System.out.print(i+" ");
}
}
}).start();
new Thread(new Runnable() {
@Override
public void run() {
for (int i=0; i<10; i++){
System.out.print(i+" ");
}
}
}).start();
}
输出结果如下:
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9
阿神2017-04-18 10:29:18
1. Pour contrôler l'ordre des verrous de thread afin de rester cohérent, vous pouvez utiliser les verrous flexibles du package java.util.concurrent.locks
2. Utilisez les classes atomiques de java.util.concurrent.atomic forfait
巴扎黑2017-04-18 10:29:18
L'exécution du CPU est trop rapide. Le premier thread a fini de s'exécuter rapidement. Le deuxième thread n'a peut-être pas encore été créé. Essayez de changer la valeur de la boucle à 1000. Vous devriez pouvoir voir l'effet, mais il. ne fonctionnera certainement pas. Ce sera intersectionnel et déroutant
高洛峰2017-04-18 10:29:18
Les tâches d'exécution du CPU sont exécutées dans le désordre et la synchronisation entre plusieurs threads n'est pas garantie. Si vous souhaitez garantir l'ordre, un contrôle de synchronisation est requis
.