Zum Inhalt springen

Problem mehreren Soketverbindungen


uthred

Empfohlene Beiträge

Hi,

Ich hebe für mein Programm vorgesehen, dass mehrere andere Programme, via Soket, auf eine Datenquelle zugreifen können.

Hierbei habe ich mich des Tutorials einer Multi-Connection-Soketverbindung bedient (A multi-threaded socket-based Java server) Nur dass in meinem Fall die Connection-class über eine Methode im Connectionmanager auf den Controller zugreift und sich dort die Daten holt.

Mit einer Verbindung funktioniert das ganze wunderbar....

Mit mehreren Verbindungen, die alle im selben Modus laufen (Das warten auf einen veränderten Datensatz), gibt es das Problem, dass nicht alle Verbindungen die Daten bekommen.

Ich habe beispielsweise fünf Verbindungen offen (Verbindung Nr 1-5), Ganz am Anfang bekommt nur Nr1 Daten, bei der ersten Änderung, bekommt dann Nr 1 & 3, bei der 2. Änderung Nr 1 & 3 & 5, usw...

Ich vermute mal das es der gleichzeitige Zugriff auf die Daten ist, der synchronisiert werden muss.

Ich habe die Methoden zum Daten lesen schon synchronized gemacht, das hat allerdings nicht geholfen.

Ziel ist, das alle Threads die Daten (fast) gleichzeitig bekommen

Link zu diesem Kommentar
Auf anderen Seiten teilen

Es war ein anderer Fehler ^^

Ich habe mir vom Eventlistener eine flag setzen lassen und diese beim auslesen zurückgesetzt, ohne zu berücksichtigen das jeder Thread dieselbe flag sieht...

Nun habe ich eine Liste mit boolischen Werten, jeder Thread bekommt einen eigenen Wert (index) zugewiesen und nachdem der Thread die Daten ausgelesen hat, setzt er die Flag zurück.

Der Eventlistener setzt bei Änderung von Daten alle auf true ... Problem gelöst

Nun muss die Soketverbindung nur noch mitbekommen, wenn der Client sich verabschiedet hat ... #ToDo

Link zu diesem Kommentar
Auf anderen Seiten teilen

Dein Kommentar

Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.

Gast
Auf dieses Thema antworten...

×   Du hast formatierten Text eingefügt.   Formatierung wiederherstellen

  Nur 75 Emojis sind erlaubt.

×   Dein Link wurde automatisch eingebettet.   Einbetten rückgängig machen und als Link darstellen

×   Dein vorheriger Inhalt wurde wiederhergestellt.   Editor leeren

×   Du kannst Bilder nicht direkt einfügen. Lade Bilder hoch oder lade sie von einer URL.

Fachinformatiker.de, 2024 by SE Internet Services

fidelogo_small.png

Schicke uns eine Nachricht!

Fachinformatiker.de ist die größte IT-Community
rund um Ausbildung, Job, Weiterbildung für IT-Fachkräfte.

Fachinformatiker.de App

Download on the App Store
Get it on Google Play

Kontakt

Hier werben?
Oder sende eine E-Mail an

Social media u. feeds

Jobboard für Fachinformatiker und IT-Fachkräfte

×
×
  • Neu erstellen...