Zastanawiam się nad zatrudnieniem wątków do wykonania kilku zadań i chciał bym aby wątki powiadamiały moją klasę o zakończeniu swojej pracy. W klasie dodałem implementację actionPerformed ale nie wiem jak zapytać google o to, co dodać w klasie wątku, żeby powiadamiał moją metodę actionPerformed. Ciągle dostaję od wujka google jak dodać action listenera do komponentów SWING a mnie to nie interesuje i nie chcę dziedziczyć w wątku po Component.
Wobec tego pytanie. Jak zaimplementować w klasie consumerThread powiadamianie actionListenera w innej klasie tej samej paczki.
kod wątku :
public class consumerThread implements Runnable {
start base; //referencja do klasy startującej wątek
public consumerThread(start base) {
this.base = base;
}
@Override
public void run() {
// jakaś tam implementacja
}
private workDone (){
}
}
kod klasy wywołującej wątek :
public class start implements ActionListener{
public void startuj() {
consumerThread th1 = new consumerThread(this);
Thread consumer = new Thread(th1);
producerThread th2 = new producerThread(this);
Thread producer = new Thread(th2);
consumer.start();
producer.start();
}
@Override
public void actionPerformed(ActionEvent e) {
System.err.println(e.getSource());
}
}