Je ne sais pas trop comment qualifier mon problème
J'ai une fonction qui fait des traitements longs :
- copie d'un rep (~100Mo)
- zip de se rep
- envoie du rep
J'aimerais que l'user soit mis au courant de ce qu'il se passe et où en est la fonction. Pour cela j'avais crée une frame toute simple avec 3 labels (Copie du répertoire - Compression du répertoire - Envoi du répertoire) qui implémentait l'interface runnable.
A coté de ça, dans la fonction, je change la variable int "indic" à chaque fois que j'avance dans les étapes.
Je lance donc la fonction. Cela lance la frame dans un nouveau thread qui "lit" en permanence (via un while()) cette variable et met à jour son affichage en fonction.
Le problème est que ça ralentit considérablement la fonction :/
Si je ne lance pas la JFrame, la copie prend 20s. Avec, elle en prend presque 2mn :/
Que pouvez vous me conseiller pour faire ce que j'aimerais ? :d
Partager