Créer un objet périodiquement

Résolu
little pepito Messages postés 13 Date d'inscription mardi 13 mars 2007 Statut Membre Dernière intervention 9 juin 2007 - 9 mai 2007 à 18:52
little pepito Messages postés 13 Date d'inscription mardi 13 mars 2007 Statut Membre Dernière intervention 9 juin 2007 - 9 mai 2007 à 22:50
Salut,
J'ai une application à rendre vendredi et j'ai un gros souci... je n'arrive pas à écrire un code pour qu'un thread (implémentant l'interface Runnable) m'éxécute une action (création d'un objet) toutes les 10 secondes :(
Quelqu'un pourrait m'aider ?

Merciii

4 réponses

little pepito Messages postés 13 Date d'inscription mardi 13 mars 2007 Statut Membre Dernière intervention 9 juin 2007
9 mai 2007 à 19:40
Ben je viens de pondre ça en m'inspirant d'un autre code et ca a l'air de marcher ( ici la période est de 10 secondes et invariable pour l'essai).
En fait , j'avais essayé la boucle for avant de poster mon message et ça avait foiré, sans doute une "bete faute" et c'est apres en cherchant des exemples  que j'ai vu qu'en fait ca marchait...
donc j ai réessayé :)
Mais je suis ouvert à toutes remarques ...

package threadPer;


class ThreadPer implements Runnable{ 
char c;
int delay = 10000 ;//(int)(Math.random()*10);




ThreadPer(char c) {
    this.c = c;
}    

public void run() {
                
        try{ for ( int k = 0; k < 20; k++)  
            { System.out.println (  "Je crée un objet " + k );
                          Thread.sleep ( delay );}}
                 
               catch( InterruptedException e ) {
            System.out.println("Interrupted Exception caught");
        }
    }    


public static void main(String[] args) {


  
    ThreadPer tp = new ThreadPer('b');                
    new Thread(tp).start();    
   
}
}
3
cs_DARKSIDIOUS Messages postés 15814 Date d'inscription jeudi 8 août 2002 Statut Membre Dernière intervention 4 mars 2013 130
9 mai 2007 à 19:10
ben montre nous ton code déjà voir ce que tu as fait et y apporter des modifications si nécessaire.
0
little pepito Messages postés 13 Date d'inscription mardi 13 mars 2007 Statut Membre Dernière intervention 9 juin 2007
9 mai 2007 à 19:45
J'ai oublié de te dire merci de m'avoir répondu :)
0
little pepito Messages postés 13 Date d'inscription mardi 13 mars 2007 Statut Membre Dernière intervention 9 juin 2007
9 mai 2007 à 22:50
Euuuh , petite précision si d'autres veulent réutiliser le code..
pour la variable delay : il y a en commentaire (int)((Math.random()*1000) , si on veut utiliser cette expression ,pour qu'à chaque tour de la "boucle for" delay change, il faut la placer dans la boucle for du bloc try-catch.
Sinon l'application calculera une valeur aléatoire mais qui restera constante pendant toute la boucle for.

Voila,

A++
0
Rejoignez-nous