Gestion des Thread -> HELP !!! - Java - Programmation
Marsh Posté le 14-06-2003 à 01:38:49
Ok mais JFrame est assimilé à un Thread?
Sinon je ne pourrais pas lui affecter une priorité si?
Marsh Posté le 14-06-2003 à 02:45:16
joujou_cs a écrit : Ok mais JFrame est assimilé à un Thread? |
diminue la propriété de ton thread de calcul. c'est mieux que d'essayer d'augmenter la priorité de ton interface
Marsh Posté le 15-06-2003 à 11:37:13
joujou_cs a écrit : |
T'es sous Quel OS ?
je me souviens que j'avais rencontré la même chose sous Solaris y a longtemps ...
La solution est de faire quelques Thread.yield() ou Thread.sleep() dans ton Thread qui est fortement concomateur de ressource : ca le force à rendre la main aux autres threads
Marsh Posté le 15-06-2003 à 17:37:19
Je connais pas Java, mais personnellement je fais l'équivalent d'un Thread.Sleep(10) quand mes threads monopolisent le processeur.
Marsh Posté le 15-06-2003 à 21:51:40
Thread.yield() rend la main
Thread.sleep(time) rend la main et attend time millisecondes avant de la reprendre
Marsh Posté le 15-06-2003 à 23:28:14
salut les gars!
ben justement j'ai essayé le yield et le sleep.
le programme attends bien X secondes mais ne rend pas la main.
Je suis sous Win 2000
Marsh Posté le 15-06-2003 à 23:58:18
T'es sûr que tu le lances correctement ton thread ?
t'apellerais pas directement la méthode run() ?
Marsh Posté le 16-06-2003 à 23:33:37
montre ton code parce que là ma boule de cristal veut plus rien me montrer ...
Marsh Posté le 13-06-2003 à 20:54:01
Salut!
voilà un petit soucis que je pense vous pouvez régler :
2 classes :
- 1 classe (A) qui herite de JFrame et qui me sert d'interface graphique
- 1 classe (B) qui hérite de Thread et qui fait des trucs compliqués qui prennent du temps.
Voilà, sur l'interface, ya un bouton qui lance le processus de la classe B. Dans la méthode run de la classe B, ya un "while(true)".
Pb : quand je clique sur le bouton ben l'interface se fige car le thread prend toutes les ressources.
Ma question : comment lancer le thread (classe B) en tache de fond pour que le traitement du thread ne bloque par l'interface??
D'avance merci