HI alle,
Ich habe einen Thread Checker (erweitert die Thread-Klasse), der die Zahlen von 1000 auf 0 verringert und anhält, wenn die Zahl 0 erreicht. Auch die Schlafzeit zwischen den Subtraktionen beträgt 10 Sekunden, daher geht es weiter wie 1000, 990, 980..... und so weiter. Diese Zählung wird dauerhaft gespeichert und wird daher nicht auf 1000 zurückgesetzt, nachdem sie verringert wurde.
Ich muss folgende Situation umsetzen:
- Ich habe 2 Klassen A und B mit der Methode main(). Sie starten diesen Thread in main(). Nun sollte es so sein, dass, wenn Klasse A den Checker-Thread ausführt, der Thread in Klasse B warten sollte, bis Klasse A seine Ausführung beendet hat.
- Klasse B'-Thread sollte nicht starten, auch wenn der Checker-Thread in Klasse A schläft.
- Der Thread der Klasse B beginnt nur dann mit der Ausführung, wenn der Checker-Thread der Klasse A angehalten wird.
Wie lässt sich eine solche Synchronisierung zwischen den Klassen A und B realisieren?
Auch das Starten des Prüffadens von Klasse A und B ist völlig willkürlich. Jeder Thread kann zu jeder Zeit gestartet werden. Wenn der Checker von A gestartet wird und B läuft, sollte er warten, bis B vollständig beendet oder angehalten ist. Und vice versa.