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 :

Alerte à une certaine heure


Sujet :

avec Java

  1. #1
    Membre du Club
    Étudiant
    Inscrit en
    Mars 2008
    Messages
    40
    Détails du profil
    Informations personnelles :
    Âge : 38

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mars 2008
    Messages : 40
    Points : 42
    Points
    42
    Par défaut Alerte à une certaine heure
    Bonjour,
    je suis en train de développer un programme qui doit effectuer une tâche tout les jours à 22heures. J'aurais aimer savoir si il existait une fonction au seins de java qui permettrait de demander au système une notification quand la machine sur laquel s'execute le programme atteint cette heure la?

    Sinon, une solution d'un thread qui lance un évenement tout les jour est envisageable? Mais comment se règler sur l'heure voulue avant de faire des saut de 24heure?

    ex: je lance l'applic a 17h30 et donc je ne doit pas lancer mon evenement avant 22h donc je doit attendre 4h30 avant de lancer l'event soit un nombre incroyable de miliseconde (si un sleep est utilisé)...

    Cette solution ne me semble pas très propre c'est pourquoi je fait encore appel à vos bonnes idées...

    D'avance merci,
    Moufa

  2. #2
    Expert éminent sénior
    Avatar de tchize_
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Avril 2007
    Messages
    25 481
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : Belgique

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2007
    Messages : 25 481
    Points : 48 806
    Points
    48 806
    Par défaut
    des frameworks comme quartz permettent de scheduler des taches à des heures précises, avec des règles de répétition et tout le bordel qui va avec. Avantage, rien de vraiment particulier à coder, si ce n'est la tache en question. Inconvénient, un librarie à rajouter à ton application

  3. #3
    Membre régulier
    Profil pro
    Inscrit en
    Mai 2008
    Messages
    149
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2008
    Messages : 149
    Points : 95
    Points
    95
    Par défaut
    Sinon il existe aussi les objets 'Timer' et 'TimerTask' dans le package java.util.

  4. #4
    Membre du Club
    Étudiant
    Inscrit en
    Mars 2008
    Messages
    40
    Détails du profil
    Informations personnelles :
    Âge : 38

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mars 2008
    Messages : 40
    Points : 42
    Points
    42
    Par défaut
    oui en effet, je me suis rendu compte de cela en recherchant un peu sur le schedule

    J'ai enfin trouver comment faire: Je ne dit pas que c'est la meilleur façon, mais voici un exemple:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
     
    Timer timer = new Timer();
     Calendar date = Calendar.getInstance();
     
    date.set( Calendar.DAY_OF_WEEK, Calendar.getInstance().get(Calendar.DAY_OF_WEEK));
     
    date.set(Calendar.HOUR_OF_DAY, 22);
    date.set(Calendar.MINUTE, 0);
    date.set(Calendar.SECOND, 0);
    date.set(Calendar.MILLISECOND, 0);
     
    timer.schedule( new Save(datas), date.getTime(),
                    1000 * 60 * 60 * 24);
    et voici le save qui fait le job demandé:

    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
     
    public class Save extends TimerTask implements Serializable
    {
     
        private Vector<Call> data=null;
     
        public Save(Vector<Call> data)
        {
            this.data = data;
        }
     
        @Override
        public void run()
        {
            System.out.println("dans le job");
            //TACHE A EFFECTUER
        }
     
    }
    Encore merci pour ces pistes et vos réponses rapide

    Moufa

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. serveur indisponible a partir d'une certaine heure
    Par ledawa dans le forum RedHat / CentOS / Fedora
    Réponses: 2
    Dernier message: 08/03/2011, 11h04
  2. [C++\cli] - lancer un process à une certaine heure
    Par EvilDef3 dans le forum C++/CLI
    Réponses: 2
    Dernier message: 07/05/2010, 14h31
  3. Activer la veille prolongée à une certaine heure?
    Par Prosis dans le forum Windows Vista
    Réponses: 2
    Dernier message: 09/02/2009, 13h15
  4. Exécution script à une certaine heure
    Par Nibor dans le forum EDI, CMS, Outils, Scripts et API
    Réponses: 3
    Dernier message: 07/10/2007, 21h16
  5. [MSDE]base en lecture seule à partir d'une certaine heure
    Par groum999 dans le forum MS SQL Server
    Réponses: 5
    Dernier message: 16/09/2004, 12h16

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