IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

avec Java Discussion :

[Thread] Lancer un thread et executer une tache


Sujet :

avec Java

  1. #1
    Membre régulier
    Homme Profil pro
    Inscrit en
    Avril 2010
    Messages
    116
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Avril 2010
    Messages : 116
    Points : 98
    Points
    98
    Par défaut [Thread] Lancer un thread et executer une tache
    Bonjour,

    j'ai un petit soucis, je voudrais lancer un Thread puis afficher toutes les deux secondes "données reçues".

    J'arrive à lancer mon Thread mais j'ai du mal au niveau du timer...
    Voici mon code :


    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    import java.awt.event.ActionEvent;
    import java.awt.event.ActionListener;
     
    import javax.swing.Timer;
     
     
    /**
     * 
     */
     
    /**
     * @author pf95227
     *
     */
    public class ExperimentThread extends Thread{
     
    	public void run(){
     
    	System.out.println("on est dans le run");
     
    	}
    	public void timerStart(){
     
    		ActionListener actionListener = new ActionListener() {
     
    		      public void actionPerformed(ActionEvent actionEvent) {
    		    	  System.out.println("thread lancé");
    		      }
     
    		    };
    		    Timer timer = new Timer(50, actionListener);
    		    timer.start();
     
     
     
    	}
     
    	/**
             * 
             */
    	public ExperimentThread() {
    		// TODO Auto-generated constructor stub
    		System.out.println("start du thead");
    	}
     
     
     
     
    }

  2. #2
    Modérateur
    Avatar de wax78
    Homme Profil pro
    Chef programmeur
    Inscrit en
    Août 2006
    Messages
    4 074
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : Belgique

    Informations professionnelles :
    Activité : Chef programmeur
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Août 2006
    Messages : 4 074
    Points : 7 978
    Points
    7 978
    Par défaut
    Il faut peut etre que tu l'appelle un moment si tu veux le creer/demarrer.
    Pourquoi tu utilise un timer ?
    Tu n'est pas censé attendre un message de qlq part (qui simule le sleep de 2 secodes) puis afficher ton message ?
    (Les "ça ne marche pas", même écrits sans faute(s), vous porteront discrédit ad vitam æternam et malheur pendant 7 ans)

    N'oubliez pas de consulter les FAQ Java et les cours et tutoriels Java

  3. #3
    Membre régulier
    Homme Profil pro
    Inscrit en
    Avril 2010
    Messages
    116
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Avril 2010
    Messages : 116
    Points : 98
    Points
    98
    Par défaut
    Bonjour,
    J'ai oublié de le mettre dans le code mais j'ai mis l'appel de la méthode, et ça ne fonctionne pas.

    Sinon j'ai pensé à un timer car je souhaite effectuer l'action toutes les deux secondes et je pensais que le sleep etait moins adapté mais je vais voir avec.

  4. #4
    Modérateur
    Avatar de wax78
    Homme Profil pro
    Chef programmeur
    Inscrit en
    Août 2006
    Messages
    4 074
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : Belgique

    Informations professionnelles :
    Activité : Chef programmeur
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Août 2006
    Messages : 4 074
    Points : 7 978
    Points
    7 978
    Par défaut
    Ni le sleep ni le timer me semble adapté.... qu'est-ce que tu sais que toutes les 2 secondes tu as bien recues "ta donnée" ?
    Il manque une explication ou un code pour pouvoir mieux t'aider.
    (Les "ça ne marche pas", même écrits sans faute(s), vous porteront discrédit ad vitam æternam et malheur pendant 7 ans)

    N'oubliez pas de consulter les FAQ Java et les cours et tutoriels Java

  5. #5
    Modérateur

    Profil pro
    Inscrit en
    Septembre 2004
    Messages
    12 551
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2004
    Messages : 12 551
    Points : 21 607
    Points
    21 607
    Par défaut
    Accessoirement, la méthode run() d'un Thread est appelée quand le Thread est démarré, et le Thread se termine quand elle se termine.

    Là cette méthode dit qu'on est dans le run, puis se termine tout de suite après sans rien faire d'autre. Ce Thread ne fait donc qu'afficher exactement un message et rien d'autre.
    N'oubliez pas de consulter les FAQ Java et les cours et tutoriels Java

Discussions similaires

  1. [WD10]Executer une tache toute les x min, sec, etc.
    Par tunidesign dans le forum WinDev
    Réponses: 2
    Dernier message: 11/02/2008, 03h31
  2. lancer un thread dans un thread
    Par andromeda dans le forum Entrée/Sortie
    Réponses: 4
    Dernier message: 27/07/2007, 23h29
  3. Lancer un module VBA par une tache planifié
    Par gengen dans le forum Access
    Réponses: 9
    Dernier message: 25/04/2006, 16h22
  4. [Thread] Lancer un thread puis l'arrêter
    Par GLDavid dans le forum Concurrence et multi-thread
    Réponses: 6
    Dernier message: 16/02/2006, 18h09
  5. [Thread] comment arreter un thread qui execute une methode b
    Par Cyber@l dans le forum Concurrence et multi-thread
    Réponses: 8
    Dernier message: 04/08/2004, 10h51

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo