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 :

[Stratégie]planification de tache avec java


Sujet :

Java

  1. #1
    Membre du Club
    Inscrit en
    Juillet 2005
    Messages
    49
    Détails du profil
    Informations forums :
    Inscription : Juillet 2005
    Messages : 49
    Points : 57
    Points
    57
    Par défaut [Stratégie]planification de tache avec java
    je devlop actuellement une application java qui doit ce lancer

    chaque 10min pour reccuperer un fichier via ftp.........

    comment devre je procedez pour ajouter cette fonctionnalite de planification de tache avec java........?

    en plus cette application devra assurer la portabilite sur unix et windows ece possible????

    est ce que les thread sont necessaire????

    [ Modéré par vedaer ]
    Ajout d'un tag dans le titre
    Les Règles du Forum

  2. #2
    Membre éprouvé

    Profil pro
    Inscrit en
    Juin 2004
    Messages
    882
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Juin 2004
    Messages : 882
    Points : 948
    Points
    948
    Par défaut
    je pense que tu as trouve tout seul une soluce a ton probleme, les thread me semblent etre la solution...

    La jvm utilise le thread scheduler de la platforme sur laquelle elle est installee, c est sur ce seul point que langage java est dependant de la plateforme...

    La portabilite n en n est neanmoins pas affectee tant que ton algorithme de thread n est pas base sur les priorites des threads que tu utilises

    Bon courage

    Sun Certified Business Component Developer
    Sun Certified Java Programmer
    --
    The definitive toolbox for GWT applications: gwt-toolbox
    My blog about Java and JEE: Benjamin's Blog

  3. #3
    Membre éprouvé
    Profil pro
    Eleveur de cornichons
    Inscrit en
    Juin 2002
    Messages
    1 074
    Détails du profil
    Informations personnelles :
    Localisation : Royaume-Uni

    Informations professionnelles :
    Activité : Eleveur de cornichons
    Secteur : Finance

    Informations forums :
    Inscription : Juin 2002
    Messages : 1 074
    Points : 1 166
    Points
    1 166
    Par défaut
    Oui les thread. Mais une pause de 10 minutes aussi peut marcher si ton programme n'a qu'une seule tâche à faire (rien pendant les 10 minutes d'attentes).
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    while(condition){
     // recuperer fichier sur le ftp
    Thread.sleep(600000); // euh... c'est supporté autant? 
    }
    La portabilite n en n est neanmoins pas affectee tant que ton algorithme de thread n est pas base sur les priorites des threads que tu utilises
    Petit problème d'apostrophe?

    Nas'

  4. #4
    Membre confirmé
    Profil pro
    Inscrit en
    Mars 2005
    Messages
    429
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2005
    Messages : 429
    Points : 475
    Points
    475
    Par défaut
    Bonjour,

    Je te déconseille de faire un Thread.sleep().

    Utilise plutôt Timer et Timertask, qui servent justement à résoudre les problèmes comme le tien.

    Exemple :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    Timer timer = new Timer();
    TimerTask task = new TimerTask() {
       public void run() {
          // récupération ftp     
       }
    };
    timer.scheduleAtFixedRate(task, 0, 10*60*1000);
    Nicolas

  5. #5
    Membre éprouvé
    Profil pro
    Eleveur de cornichons
    Inscrit en
    Juin 2002
    Messages
    1 074
    Détails du profil
    Informations personnelles :
    Localisation : Royaume-Uni

    Informations professionnelles :
    Activité : Eleveur de cornichons
    Secteur : Finance

    Informations forums :
    Inscription : Juin 2002
    Messages : 1 074
    Points : 1 166
    Points
    1 166
    Par défaut
    Je ne connaissais pas cette méthode, étant débutant.
    Toutefois, pourquoi le Thread.sleep() est à éviter dans ce cas?
    Par ailleurs, avec ta méthode, la méthode run() est celle de l'interface Runnable?

    Nas'

  6. #6
    Membre confirmé
    Profil pro
    Inscrit en
    Mars 2005
    Messages
    429
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2005
    Messages : 429
    Points : 475
    Points
    475
    Par défaut
    1. L'inconvénient de Thread.sleep(), c'est que si ta récupération ftp dure 1 min (par exemple), la mise à jour aura lieu en fait toutes les 11 minutes, et si la récupération dure ensuite 20 secondes, la fréquence devient 10 min 20s. En résumé, ce n'est pas régulier.

    2. En revanche, Timer.scheduleAtFixedRate est censée être régulière. Cf. la documentation de l'API.

    3. TimerTask implémente en effet l'interface Runnable. Cf. la documentation de l'API.

    N'hésite pas à demander si tu souhaites des précisions.

    Nicolas

  7. #7
    Membre régulier Avatar de Goldocrack
    Profil pro
    Inscrit en
    Novembre 2002
    Messages
    126
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : France

    Informations forums :
    Inscription : Novembre 2002
    Messages : 126
    Points : 112
    Points
    112
    Par défaut
    Essai de lire ce super tutorial sur Quartz réalisé par developpez.com

    Planifier des tâches avec Quartz
    • Un langage de programmation est censé être une façon conventionnelle de donner des ordres à un ordinateur. Il n'est pas censé être obscur, bizarre et plein de pièges subtils (ça ce sont les attributs de la magie). [Dave Small]
    • Un programme c'est un sort que l'on jette à un ordinateur et qui se transforme en messages d'erreur.
    • Codez en pensant que celui qui maintiendra votre code est un psychopathe qui connait votre adresse.


    et ne sont pas des options...

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

Discussions similaires

  1. planification de tache avec schtasks
    Par mma48 dans le forum Scripts/Batch
    Réponses: 0
    Dernier message: 23/02/2015, 10h36
  2. planification de taches avec schtasks
    Par mma48 dans le forum Windows
    Réponses: 0
    Dernier message: 21/02/2015, 13h34
  3. Planification de taches avec SQL
    Par siro1 dans le forum MS SQL Server
    Réponses: 2
    Dernier message: 16/06/2010, 13h47
  4. tache planifie avec java
    Par hb2ee dans le forum Entrée/Sortie
    Réponses: 5
    Dernier message: 13/04/2009, 13h26
  5. Planification de tache avec paramètre d'entrée
    Par Platon35 dans le forum Windows Serveur
    Réponses: 2
    Dernier message: 18/10/2006, 13h43

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