F
FFNShadow
Gast
Hallo.
Ich habe folgendes Problem und leider bin ich auf dem Gebiet der Threads nicht wirklich fit:
Programmteil Erzeuger, der in zufälligen Abständen Sachen erzeugt und diese in eine Datenbank schreibt.
Programmteil Konsument, der die Datenbank abrufen soll und mit den dortigen Einträgen arbeiten muss.
Beide Teile sind in 2 unterschiedlichen Klassen. Ich möchte, dass wenn der Erzeuger wieder neue Einträge für die DB erzeugt hat, dieser den Konsument informiert.
Der Konsument soll sich in einem Wartezustand (wait()?) befinden und halt nur bei neuen Einträgen aus diesem erweckt werden.
Hab jetzt schon viel über Threads und deren sychronisation gelesen, aber leider bezogen sich die Beispiele immer auf Threads, welche Programmteile aus der selben Klasse benutzen.
Ich benötige nun eine Idee, wie man diese beiden Programme, welche sich in 2 Klasse befinden miteinander synchronsieren kann.
Eigentlich benötigt man doch ein Objekt, auf das beide Teile zugreifen können und über das beide Threads synchroniert werden. Alle Beispiele, die ich bis jetzt gefunden habe, machen das mit einer privaten Variable in der selben Klasse. Nur leider sind bei mir beide Threads ja in 2 Klassen untergebracht und somit fällt diese Lösung leider weg.
Oder ist meine Idee einfach viel zu kompliziert und es gibt eine einfachere Idee, wie man das Geforderte umsetzen kann?
Bin für Ideen dankbar und danke schonmal für mögliche Hinweise.
Ich habe folgendes Problem und leider bin ich auf dem Gebiet der Threads nicht wirklich fit:
Programmteil Erzeuger, der in zufälligen Abständen Sachen erzeugt und diese in eine Datenbank schreibt.
Programmteil Konsument, der die Datenbank abrufen soll und mit den dortigen Einträgen arbeiten muss.
Beide Teile sind in 2 unterschiedlichen Klassen. Ich möchte, dass wenn der Erzeuger wieder neue Einträge für die DB erzeugt hat, dieser den Konsument informiert.
Der Konsument soll sich in einem Wartezustand (wait()?) befinden und halt nur bei neuen Einträgen aus diesem erweckt werden.
Hab jetzt schon viel über Threads und deren sychronisation gelesen, aber leider bezogen sich die Beispiele immer auf Threads, welche Programmteile aus der selben Klasse benutzen.
Ich benötige nun eine Idee, wie man diese beiden Programme, welche sich in 2 Klasse befinden miteinander synchronsieren kann.
Eigentlich benötigt man doch ein Objekt, auf das beide Teile zugreifen können und über das beide Threads synchroniert werden. Alle Beispiele, die ich bis jetzt gefunden habe, machen das mit einer privaten Variable in der selben Klasse. Nur leider sind bei mir beide Threads ja in 2 Klassen untergebracht und somit fällt diese Lösung leider weg.
Oder ist meine Idee einfach viel zu kompliziert und es gibt eine einfachere Idee, wie man das Geforderte umsetzen kann?
Bin für Ideen dankbar und danke schonmal für mögliche Hinweise.