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 :

Boucle itérative de Threads répétés


Sujet :

Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Nouveau candidat au Club
    Homme Profil pro
    Inscrit en
    Août 2011
    Messages
    2
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Août 2011
    Messages : 2
    Par défaut Boucle itérative de Threads répétés
    Bonjour,

    J'ai une question très épineuse à poser.

    j'utilise les threads pour une tâche de mise à jour.
    j'ai décomposé la tâche en petites parties pour éviter la fin du thread avant la fin de la tâche, mais là n'aest pas la question...

    Le fait est que cette mise à jour se fait vers des programmes clients installées sur des appareils BlackBerry, identifiés par leur numéro de Pin

    Donc dans la tâche de mise à jour je dois spécifier le Pin de l'appareil à qui envoyer cette mise à jour

    Par ailleurs, j'ai aussi besoin du nom de l'utilisateur pour envoyer des information pertinentes

    J'ai une table de correspondance entre le Pin et le nom de la personne, donc la question n'est pas là non plus ...

    En fait la mise à jour doit se faire une fois par jours.
    Donc mes sept threads sont programmés pour s'exécuter en décalé (avec un delay 0 pour le premier, 6 000 millisecondes pour le second,...) et une fois par jour ( donc à une période de 86 400 000 millisecondes).

    Bon, trés bien, ça devrait trés bien fonctionner.

    Mais le hic c'est justement que j'appelle des classes héritières de TimerTask qui ont un constructeur avec un paramètre pour certaines (le nom ou le pin) pour pouvoir appeller ma méthode avec ces paramètres...

    Donc je déclenche mes threads, ou plutot je les programmes, à l'intérieur d'une boucle itérative qui prendra successivement les paramètres des différents utilisateurs.

    Ma question est : Java va-t'il distinguer entre les threads (ils ont le meême nom de variables) et va t'il garder active la programmation de tous ces différents threads (qui ne se différencient que par des paramètres)

    Je l'avais dit, la question est épineuse, mais merci à tous ceux qui prendront la peine de répondre ou de m'interroger pour clarifier

  2. #2
    Nouveau candidat au Club
    Homme Profil pro
    Inscrit en
    Août 2011
    Messages
    2
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Août 2011
    Messages : 2
    Par défaut Exemple de code
    Ce sera plus parlant avec un bout de 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
    vecteurNoms = new Vector<String>(new HashSet<String>(
    				vecteurNoms));
    vecteurPins = new Vector<Integer>(new HashSet<Integer>(
    				vecteurPins));
     
    tailleVecteurNoms = vecteurNoms.size();
     
    for (int i =0 ; i < tailleVecteurNoms ; i++ ) 
                    {
    		nom = vecteurNoms.elementAt(i);
    		pin = vecteurPins.elementAt(i);
     
                    runnableProcMAJ = new FilProcMiseAJourCli (nom);
     
                    time.schedule(runnableProcMAJ, 0, 86400000);
                    }

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

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

    Informations forums :
    Inscription : Avril 2007
    Messages : 25 482
    Par défaut
    a partir du moment où tu stocke bien le nom dans FilProcMiseAJourCli, java ne devrais rien mélanger. Ce sont des objets comme les autres sur lequel le thread du timer va appeler une méthode précise (run) et c'est tout

Discussions similaires

  1. Quitter une fonction qui fait une boucle dans le Thread ?
    Par bboy0303 dans le forum Multithreading
    Réponses: 2
    Dernier message: 25/05/2009, 17h58
  2. un SUM + sous-requête pour remplacer une boucle itérative
    Par forzaxelah dans le forum Langage SQL
    Réponses: 2
    Dernier message: 29/03/2009, 22h16
  3. comment faire une boucle itérative
    Par Rniamo dans le forum C++
    Réponses: 0
    Dernier message: 18/06/2008, 21h47
  4. automatiser une boucle itérative
    Par laroche1 dans le forum MATLAB
    Réponses: 2
    Dernier message: 07/01/2008, 16h42
  5. JButton avec boucle while contenant thread.sleep(1000)
    Par v4np13 dans le forum AWT/Swing
    Réponses: 1
    Dernier message: 17/10/2007, 20h31

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