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

Java Discussion :

Stopper un programme au bout d'un certain temp


Sujet :

Java

  1. #1
    Nouveau Candidat au Club
    Profil pro
    Inscrit en
    Mai 2010
    Messages
    2
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2010
    Messages : 2
    Points : 1
    Points
    1
    Par défaut Stopper un programme au bout d'un certain temp
    Bonjour,

    Je suis en train de faire un programme en Java.
    Celui ci pilote un petit robot qui doit s'arrêter par sécurité au bout de x secondes.
    J'ai tenté de mettre cette classe :

    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
    public class Horloge 
    {
    		Timer mon_Timer;
    		Thread threadmain;
     
    		public Horloge(int Secondes, Thread threadmain) 
    		{
    			mon_Timer = new Timer();
    			this.threadmain = threadmain;
    			mon_Timer.schedule(new
    			Tache_Reveil(),Secondes*1000);
    			System.out.println("Chrono lancé !");
    		}
     
    		class Tache_Reveil extends TimerTask 
    		{
    			@SuppressWarnings("deprecation")
    			public void run() 
    			{
    				System.out.println("90 s écoulées");
    				mon_Timer.cancel();
     
    				threadmain.destroy();
    				while (true)
    				{
    					//bloque le programme ici
    				}
    			}
    		}
    }
    La phrase "90 s écoulées" apparait bien, mais mon programme continue à faire ce qu'il étai en train de faire ...;

    Avez-vous une idée pour ce petit souci ?

    Merci d'avance !

  2. #2
    Modérateur
    Avatar de dinobogan
    Homme Profil pro
    ingénieur
    Inscrit en
    Juin 2007
    Messages
    4 073
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France

    Informations professionnelles :
    Activité : ingénieur
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juin 2007
    Messages : 4 073
    Points : 7 163
    Points
    7 163
    Par défaut
    Le Thread doit lui-même vérifier régulièrement s'il doit s'arrêter ou pas.

  3. #3
    Nouveau Candidat au Club
    Profil pro
    Inscrit en
    Mai 2010
    Messages
    2
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2010
    Messages : 2
    Points : 1
    Points
    1
    Par défaut
    comment faire ?
    (désolé si ça parait simple mais j'essais de différentes manières et je n'arrive toujours pas à trouver une solution à mon problème)

  4. #4
    Membre chevronné
    Inscrit en
    Mai 2006
    Messages
    1 364
    Détails du profil
    Informations forums :
    Inscription : Mai 2006
    Messages : 1 364
    Points : 1 984
    Points
    1 984
    Par défaut
    Salut,

    Le plus simple, c'est dans le thread principal de tester une variable qui indique s'il doit s'arreter (je parle de threadmain).

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    while(bstopthread == false)
    {
    //Ton code
    }
    Puis, dans ton thread killer, tu appelles une fonction qui met :
    Eventuellement, si tu as besoin de synchroniser l'arret de tes thread, tu peux jeter un oeil à Thread.join

    a+

Discussions similaires

  1. Réponses: 2
    Dernier message: 12/06/2007, 11h37
  2. [VB6] MessageBox a faire disparaître au bout d'un certain temps
    Par ebgdas dans le forum VB 6 et antérieur
    Réponses: 24
    Dernier message: 22/04/2006, 23h20
  3. update qui bloque au bout d'un certain temps
    Par delaio dans le forum Bases de données
    Réponses: 2
    Dernier message: 22/03/2006, 09h51
  4. Stopper l'exécution d'une fonction au bout d'un certain temp
    Par Eagle959 dans le forum Général JavaScript
    Réponses: 1
    Dernier message: 13/03/2006, 18h16
  5. Fermer une fenêtre au bout d'un certain temps.
    Par cprogil dans le forum Composants VCL
    Réponses: 5
    Dernier message: 27/11/2003, 18h25

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