slt,
j'ai un probleme avec les Thrreads Java :
J'utilise les thread avec le langage C sous unix sans probleme, c'est simple il suffit de creer un thread et de lui associé une fonction a executer ! Mais avec Java je vois pas comment creer plusieurs threads dans une meme Classe executant chacun une methode differente de cette meme classe
Bon j'ai essaié un petit exemple le voila :
public class testth implements Runnable{
public String mes = null;
public void threadCreate(String mes){
this.mes = mes;
Thread th = new Thread(this);
th.run();
}
public void run(){
for(int i=0;i<100000;i++){
System.out.println(mes);
}
}
public static void main(String[] args) {
new testth().threadCreate("th1");
new testth().threadCreate("th2");
}
}
le probleme c'est qu'il s'execute sequenciellement non pas parallement !
meci d'avance de m'aider
en effet c'est mieux d'appeler start() que run directement mais start() appellera le run après.
Bref le problème c'est que ta classe doit étendre la classe Thread
public class testth extends Thread implements Runnable
en effet c'est mieux d'appeler start() que run directement mais start() appellera le run après.
Bref le problème c'est que ta classe doit étendre la classe Thread
public class testth extends Thread implements Runnable
voili voulou
Il n'est pas obligatoire d'étendre Thread, on peut également simplement implements Runnable.
Si tu choisis d'étendre Thread pas besoin d'ajouter Runnable vu que Thread le fait déjà.
Le soucis avec cette méthode c'est que si l'on hérite de Thread on ne plus plus hériter d'une autre classe, on considère comme plus "propre" d'implémenter Runnable et de construire Thread en lui passant une instance de Runnable .... Même si la plus part de programmeurs (comme moi ) utilisent ta méthode dans la plus part des cas
"'But I don't want to go among mad people,' said Alice. 'Oh, you can't help that,' said the cat. 'We're all mad here.'" Lewis Carroll
Pour un début (comme il dit), je pense que c'est plus simple de passer par la classe Thread puis rien n'empêche de faire un héritage multiple par la suite.
Pour un début (comme il dit), je pense que c'est plus simple de passer par la classe Thread puis rien n'empêche de faire un héritage multiple par la suite.
C'est pas vraiment plus compliqué de faire new Thread(new RunnableImpl()).start() que new ThreadChild().start()
Merci a vous tous !! ca marche tres bien avec ".start()"
Bonne Programmation !!
Probleme avec les threads Java
× Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
× Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.
"'But I don't want to go among mad people,' said Alice. 'Oh, you can't help that,' said the cat. 'We're all mad here.'" Lewis Carroll
"'But I don't want to go among mad people,' said Alice. 'Oh, you can't help that,' said the cat. 'We're all mad here.'" Lewis Carroll