[Threads] suspend and resume
Bonjour,
J'ai un sérieux probleme avec les threads.
Voilà j'ai un algorithme qui prend pas mal de cpu, alors je me suis dit pourquoi pas le mettre dans un thread et ainsi pouvoir le mettre en pause et le reveiller a ma guise.
Pour cela j'ai crée une classe comme ceci.
Code:
1 2 3 4 5 6 7 8
|
public class CalculMoiCa extends Thread{
// j'ai que la methode run
public void run() {
//un algo de calcul bien long.
}
} |
ensuite dans mon interface swing qui est dans une autre class, à l'aide de quelques boutons j'effectue
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27
|
private CalculMoiCa viite = null;
// ...
public void actionPerformed(ActionEvent e) {
JButton b = (JButton)e.getSource();
if (b == this.bStart) {
System.out.println("start");
viite = new CalculMoiCa();
viite.start();
return;
}
if (b == this.bResume) {
System.out.println("resume");
viite.notifyAll();
return;
}
if (b == this.bPause) {
System.out.println("pause");
viite.wait();
return;
}
} |
Mais bien entendu ca ne marche pas :/
J'ai surement pas compris quelque chose.
Merci à l'avance pour votre aide.