Pouvons-nous utiliser la méthode d'exécution directe comme dans la classe ci-dessous. Il produit le même résultat que lorsque nous utilisons t1.start(); Y a-t-il une raison derrière l'utilisation de la méthode start pour invoquer run?Méthode d'exécution des threads
public class runcheck extends Thread{
public void run(){
System.out.println(" i am run");
}
public static void main(String args[]){
runcheck as = new runcheck();
Thread t1 = new Thread(as);
t1.run();
}
}
La pratique actuelle dit que 'runcheck' ne devrait pas étendre' Thread », mais simplement mettre en œuvre« Runnable ». (Généralement pour la séparation des problèmes - vous n'avez généralement pas de priorité sur les autres méthodes 'Thread'.) – millimoose