Déefinir le temps d'éxécution d'une boucle

Déefinir le temps d'éxécution d'une boucle - Java - Programmation

Marsh Posté le 22-02-2005 à 20:02:53    

Bonjour, :hello:  
 
j'ai une boucle: for( k1 = 0; k1 < 70; k1++){
                 for( k2 = 0; k2 < 70; k2++){
                 for( k3 = 0; k3 < 70; k3++){
                 for( k4 = 0; k4 < 70; k4++){ }}}}
 
Je voudrais conaitre son temps d'éxécution(en minutes,seconde et avec une JProgressBar(barre de progression)) quii je sais est assez long.
Comment dois je m'y prendre?Avez-vous une idée?
Merci :jap:

Reply

Marsh Posté le 22-02-2005 à 20:02:53   

Reply

Marsh Posté le 22-02-2005 à 20:23:56    

La javadoc donne un lien vers How to Use Progress Bars.


Message édité par sircam le 22-02-2005 à 20:24:09

---------------
Now Playing: {SYNTAX ERROR AT LINE 1210}
Reply

Marsh Posté le 23-02-2005 à 15:14:10    

Il va falloir utiliser les threads pour faire une barre de progression.
 
Apres pour la barre de progression il y a plusieurs solutions
- soit la progession se fait en fonction de l'avancement réel de la tache ce qui implique d'en connaitre la durée ou un volume de donnée échangé ou etc ...
- soit il y a juste un mouvement dans la barre mais qui ne represente pas l'avancement réel
 
apres reste plus qu'à mettre en place !!

Reply

Marsh Posté le 23-02-2005 à 15:38:29    

L'avancement réel semble pouvoir être determiné : 70^4 itérations.
 
Bien entendu, on pourrait techniquement faire l'économie de threads et de communication/publication de l'état d'avancement de la boucle en faisant un "push" plus ou moins dégueu au coeur de la boucle même...
 
Avec coups de pelle à clous à la clé je suppose :/


---------------
Now Playing: {SYNTAX ERROR AT LINE 1210}
Reply

Marsh Posté le 23-02-2005 à 16:28:45    

sircam de toutes façon, y'a pas trop d'autre choix que ça.
 
à moins de publier une variable volatile représentant l'avancement et un truc qui va la lire toutes les demi secondes, mais c'est un poil trop complexe pour un débutant je pense.


---------------
trainoo.com, c'est fini
Reply

Marsh Posté le 23-02-2005 à 17:01:13    

[:airforceone]
 
Coupler la business logic à l'affichage, on l'a tous fait un jour, mais bon... D'un autre côté, la variable volatile n'a rien de compliqué. Reste le thread qui va lire toutes les 1/2 secondes; faut voir si le gars est à l'aise ou pas, mais c'est l'occasion d'apprendre les threads.


---------------
Now Playing: {SYNTAX ERROR AT LINE 1210}
Reply

Marsh Posté le 23-02-2005 à 17:04:29    

sircam a écrit :

[:airforceone]
 
Coupler la business logic à l'affichage, on l'a tous fait un jour


nan, mais s'il fait ça "activement" depuis la boucle, il doit au moins faire un observateur pour ne pas coupler.


---------------
trainoo.com, c'est fini
Reply

Marsh Posté le 02-05-2005 à 15:35:22    

mais est ce qu'il est possible de connaitre la durée d'un boucle lorque celle si est reccurssive. Exemple:
 
void rechercheEnfant(Personne personne)
{
 
}

Reply

Marsh Posté le 02-05-2005 à 15:40:34    

void rechercheEnfant(Personne personne)  
{  
   List enfant = personne.getEnfant();
   Iterator i = enfant.iterator();
   while(i.hasNext())
   {
     Personne enfant = i.next();
     if (enfant.getEnfant() != null)
        rechercheEnfant(enfant);
   }
 }
}
 
Comment pourrait on connaitre la durée d'une telle boucle pour faire un JProgressBar

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed