Multithreading

Status
Nicht offen für weitere Antworten.

HarpGoil

Mitglied
Hallo liebe Leut', jetzt bin ich ne weile raus aus Java und gerade dabei, mir wieder einiges anzueignen ... und prompt habe ich die ersten praktischen Probleme mit dem Multithreading. Und zwar frage ich mich, wie sich auftretende Benutzerereignisse in eine Warteschlange schieben lassen. Ich möchte nämlich die Ereignisse zählen und wenn mein Arbeits-Thread abgearbeitet ist, aufgetretene Ereignisse nach bestimmten Kriterien aussortieren - ebenfalls nachdem der Arbeits-Thread fertig ist. Die nicht aussortierten Ereignisse sollen dann der Reihe nach weiter verarbeitet werden.

Wie lässt sich so etwas vom Prinzip her realisieren?
 

HarpGoil

Mitglied
Danke für die rasche Antwort, Slater.

Jetzt habe ich dazu noch eine kleine Anschlussfrage:
Ist mit "synchronized ... putMessage()" und "synchronized ... getMessage()" sicher gestellt, dass exklusiv jeweils nur eine der beiden Methoden, egal wie und von wo aufgerufen, ausgeführt werden kann ... also ge-lockt wird die Methode mit "this", allerdings weiss ich nicht, ob damit das this der Aufruferinstanz oder das der Instanz gemeint ist, in dem die Methoden definiert sind.

Thanks und Grüße
 

Ebenius

Top Contributor
this referenziert stets eine Instanz der Klasse in der this notiert ist. synchronized bezieht sich immer auf einen Block / eine Methode und stellt sicher dass zu jedem Zeitpunkt nie mehr als ein Thread den selben Block / die selbe Methode durchläuft.

Ebenius
 
S

SlaterB

Gast
und verhindert sogar den gleichzeitigen Zugriff auf alle anderen synchronized Blöcke/ Methoden desselben Monitors ;)
also, ja, während putMessage() bearbeitet wird, ist getMessage() gesperrt und andersrum

aber sowas sollte man in einem Lehrbuch nachlesen, das kann man doch hier nicht alles erklären
 

HarpGoil

Mitglied
@Ebenius
Das stimmt und das habe ich so auch nachgelesen - allerdings beantwortet das nicht meine Frage: Funktioniert die this-Sperre auch Methodenübergreifend in der Instanz (put und get nicht gleichzeitig)?

@SlaterB
In Lehrbüchern stehts leider so, wie Ebenius es erklärt. ;)
Danke für die Antwort - jetzt bin ich was klüger.


Grüße, Nico
 

Ebenius

Top Contributor
und verhindert sogar den gleichzeitigen Zugriff auf alle anderen synchronized Blöcke/ Methoden desselben Monitors ;)
also, ja, während putMessage() bearbeitet wird, ist getMessage() gesperrt und andersrum

aber sowas sollte man in einem Lehrbuch nachlesen, das kann man doch hier nicht alles erklären
Ich bin einfach noch nicht wach. Slater hat vollkommen recht. Sorry. :(

Ebenius
 
Zuletzt bearbeitet:

HarpGoil

Mitglied
@Ebenius
Guten Morgen. :D

Offtopic
Bevor ich ein Kind hatte, bin ich auch nur mit Kaffee hoch gekommen und dann wirkt der auch nicht sofort. ^^
So - seit 7 Wochen Papa ... damit ist auch entschuldigt, dass ich mich ein Jahr lang nicht hab hier blicken lassen.
 
Status
Nicht offen für weitere Antworten.
Ähnliche Java Themen
  Titel Forum Antworten Datum
buzzlightyeah multithreading Java Basics - Anfänger-Themen 4
sserio Frage zu Threading - Multithreading Java Basics - Anfänger-Themen 2
I Threads Multithreading, Producer/Consumer, notify() Java Basics - Anfänger-Themen 6
M Mehre Dateien parallel kopieren mit Multithreading Java Basics - Anfänger-Themen 8
kilopack15 Verzweiflung wegen Berechnung mit Multithreading Java Basics - Anfänger-Themen 1
P Multithreading in Java Java Basics - Anfänger-Themen 9
N Threads Read-Modify-Write Problem bei Multithreading (philosopher dining problem) Java Basics - Anfänger-Themen 5
R Threads Multithreading Java Basics - Anfänger-Themen 15
Z Verständnisfrage zum Multithreading Java Basics - Anfänger-Themen 3
T Threads MultiThreading NullPointerException Java Basics - Anfänger-Themen 7
K Frage bzgl. Multithreading Java Basics - Anfänger-Themen 5
B Multithreading und eigene Queue entwickeln Java Basics - Anfänger-Themen 3
C Multithreading, Methoden sichern Java Basics - Anfänger-Themen 5
P Hilfe bei MultiThreading; Einige Fragen. Java Basics - Anfänger-Themen 14
S OOP Multithreading Java Basics - Anfänger-Themen 5
B Multithreading Java Basics - Anfänger-Themen 5
0din Multithreading und stop Java Basics - Anfänger-Themen 5
P Singletons und Multithreading Java Basics - Anfänger-Themen 11
U Anfängerfrage - Multithreading Java Basics - Anfänger-Themen 8
M Multithreading Java Basics - Anfänger-Themen 18
I Multithreading (Prüfungsvorbereitung) Java Basics - Anfänger-Themen 6
G UI friert bei Multithreading ein Java Basics - Anfänger-Themen 3
J Multithreading mit einer TextArea Java Basics - Anfänger-Themen 29
JFeel-x Multithreading in awt Java Basics - Anfänger-Themen 2
L NullpointerException wegen wahrscheinlichem Multithreading Java Basics - Anfänger-Themen 4
Z Multithreading Java Basics - Anfänger-Themen 2
P Multithreading Java Basics - Anfänger-Themen 22

Ähnliche Java Themen

Neue Themen


Oben