Problem beim Thread

Status
Nicht offen für weitere Antworten.

pipoo

Mitglied
Hallo,

ich habe zwei threads methode geschrieben.

Der 1. Thread zeichnet Bild in einem Canvas. Also ist es quasi ein Loader.
Der 2. Thread ---> alle Daten werden in einem DB gesammelt.

In meinen codes werden 3 verschiedene Daten gesammelt. Für die 1 und 2. Daten funktioniert der 1. und 2. Thread wunderbar.

Aber wenn ich die 3, Daten sammeln will, ist der 1. Thread irgendwie abgestürzt. Falls der 2. Thread schon fertig ist, dann funktioniert der 1. Thread wieder.

kann jemand mir helfen, woran das problem liegt. und hoffe, ihr habt meine Beschreibung verstanden.

Pipoo
 

0x7F800000

Top Contributor
ich habe zwei threads methode geschrieben
was soll das heißen? zwei methoden in einer von Thread abgeleiteten Klasse, zwei verschiedene von Thread abgeleitete Klassen mit zwei verschiedenen methoden, zwei unterschiedliche threads die exakt dasselbe machen, oder wie? Konkreter bitte.
Der 1. Thread zeichnet Bild in einem Canvas. Also ist es quasi ein Loader.
"Loader" = ?
Der 2. Thread ---> alle Daten werden in einem DB gesammelt.
irgendwelche Daten die vom Programm errechnet werden, oder was für daten sind gemeint?

Aber wenn ich die 3, Daten sammeln will, ist der 1. Thread irgendwie abgestürzt.
Naja, mit einer ThreadSomehowFuckedUpException wird er das ja wohl nicht getan haben ;). Gab's irgendwelche fehlermeldungen? Oder lief einfach nichts? Sah das nach einem Deadlock aus? Unter "irgendwie abgestürzt" kann man sich da echt alles mögliche und unmögliche vorstellen...

kann jemand mir helfen, woran das problem liegt. und hoffe, ihr habt meine Beschreibung verstanden.
Nicht so wirklich, ich jedenfalls nicht... :bahnhof:
Entweder wesentlich genauer sagen was Sache ist, oder code posten, oder (was ganz wunderbar wäre) ein kleines kompilierbares Beispiel mit dem selben Fehler posten.
 

pipoo

Mitglied
was soll das heißen? zwei methoden in einer von Thread abgeleiteten Klasse, zwei verschiedene von Thread abgeleitete Klassen mit zwei verschiedenen methoden, zwei unterschiedliche threads die exakt dasselbe machen, oder wie? Konkreter bitte.
"Loader" = ?
irgendwelche Daten die vom Programm errechnet werden, oder was für daten sind gemeint?

Naja, mit einer ThreadSomehowFuckedUpException wird er das ja wohl nicht getan haben ;). Gab's irgendwelche fehlermeldungen? Oder lief einfach nichts? Sah das nach einem Deadlock aus? Unter "irgendwie abgestürzt" kann man sich da echt alles mögliche und unmögliche vorstellen...

Nicht so wirklich, ich jedenfalls nicht... :bahnhof:
Entweder wesentlich genauer sagen was Sache ist, oder code posten, oder (was ganz wunderbar wäre) ein kleines kompilierbares Beispiel mit dem selben Fehler posten.


Vielen Dank, sorry für die nicht deutlichen Beschreibungen.

1. zwei verschiedene von Thread abgeleitete Klassen mit zwei verschiedenen methoden

2. jup, ein loader.

3. Die Daten werden von anderer Database gesammelt.

4. Es gibt keine Fehlermeldung. Loader wird nur angezeigt, wenn die daten aufgelistet werden. Das Bild sollte angezeigt werden, während die Daten gesammelt werden.

das code sieht so aus:
[HIGHLIGHT="Java"]
// Loader
LoadingBar LB = new LoadingBar();

new Thread() {

public void run() {
// hier werden die Daten gesammelt.
}
}.start();

[/HIGHLIGHT]


P.S. Es gibt keine Fehlermeldung. Nur wird das Loader angezeigt, falls die Daten schon fertig gesammelt werden.


Pipoo
 
Zuletzt bearbeitet:

hdi

Top Contributor
Also unter "Loader" verstehst du jetzt einen Thread, der malerisch den Fortschritt der Bearbeitung aus der DB darstellt?
Es gibt keine Fehlermeldung. Loader wird nur angezeigt, wenn die daten aufgelistet werden. Das Bild sollte angezeigt werden, während die Daten gesammelt werden.
Klingt sehr stark nach einem typischen EDT-Problem. Veränder mal den Loader-Thread so:

[HIGHLIGHT="Java"]new Thread() {
public void run(){
SwingUtilities.invokeLater(new Runnable(){
public void run() {
// hier veränderst du die LoadingBar, oder malst rum oder sonst was
}
});
// hier holst du die Daten aus der DB
}
}.start();[/HIGHLIGHT]
 

Wildcard

Top Contributor
Nicht ohne konkrete Beschreibung. Für mich hört es sich an, als blockierst du den UI Thread durch deine Datenbankgeschichte, aber das ist nur eine Vermutung.
 

0x7F800000

Top Contributor
Nicht ohne konkrete Beschreibung. Für mich hört es sich an, als blockierst du den UI Thread durch deine Datenbankgeschichte, aber das ist nur eine Vermutung.
So wie es da oben steht, werden die daten aber im separaten thread gesammelt, der vom gui-thread unabhängig läuft, egal wo er gestartet wird... Wie soll es denn den gui-thread blockieren, außer dass es durch run() statt start() gestartet wird, oder dass man im gui-thread per join() darauf wartet? Wo soll denn was wen blockieren? ???:L
 

Wildcard

Top Contributor
Wie soll es denn den gui-thread blockieren, außer dass es durch run() statt start() gestartet wird, oder dass man im gui-thread per join() darauf wartet? Wo soll denn was wen blockieren? ???:L
Das waren so ziemlich genau die Optionen die mir auch eingefallen sind. Aber wie soll man die Beschreibung sonst lesen?
 

0x7F800000

Top Contributor
Das waren so ziemlich genau die Optionen die mir auch eingefallen sind. Aber wie soll man die Beschreibung sonst lesen?
keine Ahnung. Aber zumindest an dieser Syntaktisch inkorrekter code-skizze:
[highlight="Java"]
// Loader
LoadingBar LB = new LoadingBar();

new Thread() {

public void run() {
// hier werden die Daten gesammelt.
}
}.start();

[/highlight]
konnte ich weder das erste noch das zweite Problem feststellen...

Also, entweder liefert der OP ein bisschen code, oder wir kommen hier nicht weiter...:autsch:
 

pipoo

Mitglied
So versuche ich meine Problem zu beschreiben.

In meinem Programm gibt es zwei verschiedenen Arten, die Daten aus anderer DB zu sammeln.
Für die 1. Art funktioniert das Loader wunderbar. Das Code sieht so aus:

// Thread - Loader
LoadingBar LB = new LoadingBar();
LB.threadStart();

Thread employeeUpdate = new Thread() {
public void run() {
// DB 1 zu greifen und die Daten werden gesammelt.
}
};

employeeUpdate.start();


Für die 2.Art funktioniert das Loader nicht. Das Loader wird nur angezeigt, wenn die Daten schon gesammelt wurden. Das Code sieht so aus:

Thread threadGetSupervisor = new Thread()
public void run() {
// DB 2 wird zugegriffen. und die Daten werden gesammelt.
// Falls die Daten nicht vorhanden sind, wird die DB 3 zugegriffen.
}
}
threadGetSupervisor.start();

Also die beiden DB sind Lotus Notes - DB. Die Laufzeit von 1. Art ist geringer als die 2. Art.
Ich hoffe, meine Beschreibungen sinf jetzt etwas klarer als vorher.

Vielen Dank

Pipoo
 
Zuletzt bearbeitet:

Wildcard

Top Contributor
Und der 2. Fall wird durch die GUI getriggert?
Dann ist es kein Wunder. Wenn du join machst, blockiert die GUI so lange bis das notify kommt. Dann hättest du dir den Thread auch sparen können.
 

Wildcard

Top Contributor
Was heißt nicht funktioniert? Dein Problem ist, das es blockiert? Ohne join blockiert es nicht.
 

Wildcard

Top Contributor
Nicht wenn du nicht an anderer Stelle auf den Thread wartest.
Debugger oder debug ausgaben auf die Konsole können wunder bewirken...
 
Status
Nicht offen für weitere Antworten.
Ähnliche Java Themen
  Titel Forum Antworten Datum
K Problem beim Einbau von einem Thread in eine Gui Java Basics - Anfänger-Themen 9
C GLOOP Problem beim Erstellen der Kamera Java Basics - Anfänger-Themen 9
sserio Problem beim Anzeigen Java Basics - Anfänger-Themen 5
I Output BigDecimal anstatt double / Problem beim Rechnen Java Basics - Anfänger-Themen 16
P Problem beim Überschreiben einer vererbten Methode Java Basics - Anfänger-Themen 4
J Problem beim vergleich von zwei Integer Java Basics - Anfänger-Themen 3
G Problem beim Speichern von Objekten in einer Datei Java Basics - Anfänger-Themen 7
S Collections funktionale Listen (ListNode<E>) review und problem beim clone Java Basics - Anfänger-Themen 0
C Methoden Problem beim Speichern von Variablen Java Basics - Anfänger-Themen 1
F Problem beim entfernen von mehreren Listenelementen auf einmal (Programmierung des Spiels Arschloch) Java Basics - Anfänger-Themen 1
B Problem beim grundsätzlichen Verständnis bei Rekursion mit 2-dimensionalen Array Java Basics - Anfänger-Themen 6
E Datentypen Problem beim Speichern von enum. Java Basics - Anfänger-Themen 10
A Problem beim Deklarieren von einem BOOLEAN Java Basics - Anfänger-Themen 4
B Gleicher Prozess starten und stoppen (Problem beim Stoppen) Java Basics - Anfänger-Themen 5
DestinatioN Problem beim splitten eines Satzes in Wörter und die Wörter in Buchstaben Java Basics - Anfänger-Themen 2
B Problem beim Angeben einer Eingabe Java Basics - Anfänger-Themen 12
J Encoding Problem beim Einlesen einer txt Datei mit Umlauten Java Basics - Anfänger-Themen 3
R Problem beim Wochenplan (Datum,Wochentag) Java Basics - Anfänger-Themen 30
D Problem beim umwandeln eines Strings in eine Dzezimalzahl Java Basics - Anfänger-Themen 6
A Compiler-Fehler Problem beim einbinden der applet Klasse Java Basics - Anfänger-Themen 2
L Compiler-Fehler Problem beim Programmieren eines Kalenders (java.lang.ArrayIndexOutOfBoundsException) Java Basics - Anfänger-Themen 2
C Problem beim laden eines BufferedImage Java Basics - Anfänger-Themen 2
D Problem beim Lesen einer txt-Datei Java Basics - Anfänger-Themen 8
fLooojava Bluetooth Projekt - Problem beim mehrmaligen Senden Java Basics - Anfänger-Themen 5
E Problem beim Übergeben von Parameter an Methode Java Basics - Anfänger-Themen 2
Z Problem beim Lesen und Schreiben einer Datei Java Basics - Anfänger-Themen 10
R Problem beim erstellen eines neuen Klassenobjekts Java Basics - Anfänger-Themen 2
F Input/Output Problem beim einlesen eines Strings Java Basics - Anfänger-Themen 3
J Problem beim auslesen von Int Wert aus YML-Datei Java Basics - Anfänger-Themen 6
P Problem beim Abschluss im Kompositum Java Basics - Anfänger-Themen 3
M Problem mit null pinterexception beim laden von Bildern Java Basics - Anfänger-Themen 20
K Problem beim Array aufruf Java Basics - Anfänger-Themen 4
J Problem beim ausführen in cmd.exe Java Basics - Anfänger-Themen 4
J Variablen Problem beim einlesen einer Zahl Java Basics - Anfänger-Themen 7
A Problem beim Compilieren Java Basics - Anfänger-Themen 11
J Problem beim Fenster Java Basics - Anfänger-Themen 4
tux20 Problem beim Schreiben von List to File Java Basics - Anfänger-Themen 2
M Problem beim Compilieren Java Basics - Anfänger-Themen 14
Maxim6394 Problem beim Abspielen von Sounds Java Basics - Anfänger-Themen 8
S Problem beim ersten compilieren überhaubt Java Basics - Anfänger-Themen 43
H Problem beim lesen des InputStreams von einem Subprozess Java Basics - Anfänger-Themen 4
Luk10 Problem beim .jar Datei erstellen Java Basics - Anfänger-Themen 19
L Problem beim Ausführen Java Basics - Anfänger-Themen 40
A Problem beim einfügen in eine Datenbank Java Basics - Anfänger-Themen 2
E Problem beim Programmieren eines Kartenspiels Java Basics - Anfänger-Themen 3
A Problem beim Ausführen einer .jar datei auf externen System Java Basics - Anfänger-Themen 5
M Problem beim compilieren Java Basics - Anfänger-Themen 6
JAVAnnik problem beim lvl laden Java Basics - Anfänger-Themen 15
L Problem beim Einlesen einer Datei in einen String Java Basics - Anfänger-Themen 12
W Problem beim erstellen eines Tests Java Basics - Anfänger-Themen 16
JAVAnnik Problem beim Objekt bewegen Java Basics - Anfänger-Themen 20
A Erstes Programm - Problem beim Ausführen als jar Java Basics - Anfänger-Themen 3
S Problem beim Speichern und Laden von Daten Java Basics - Anfänger-Themen 13
B Problem beim Abspielen einer Videodatei Java Basics - Anfänger-Themen 4
S Problem beim Erstellen eines Scanner-Objekts Java Basics - Anfänger-Themen 7
W Problem beim CSV-Import Java Basics - Anfänger-Themen 5
M Datentypen Problem beim zusammenstellen eines Abfrage-Strings Java Basics - Anfänger-Themen 3
K Collections Problem beim import von Packages Java Basics - Anfänger-Themen 10
S Problem beim Kompilieren - cannot find symbol - constructor() Java Basics - Anfänger-Themen 12
B Problem beim Email versenden mit Javamail Java Basics - Anfänger-Themen 5
H Problem beim Anfang von Java (Java Editor) Java Basics - Anfänger-Themen 2
I Problem beim Schreiben eines ersten Programms Java Basics - Anfänger-Themen 3
D Problem beim Zeichnen von "Das Haus vom Nikolaus" Java Basics - Anfänger-Themen 10
D Problem beim Auslesen aus File Java Basics - Anfänger-Themen 3
A Problem beim Splitten eines Strings Java Basics - Anfänger-Themen 10
S Problem mit ObjectInputStream beim Einlesen von LinkedList Java Basics - Anfänger-Themen 3
J Problem beim Löschen von elementen aus einer ArrayList Java Basics - Anfänger-Themen 5
V Problem beim Programm laden Java Basics - Anfänger-Themen 5
H Problem beim kompilieren Java Basics - Anfänger-Themen 3
C ActionListener problem beim starten von programmen Java Basics - Anfänger-Themen 3
4 OOP Problem beim Speichern verschiedener Klassen in verschiedenen Dateien Java Basics - Anfänger-Themen 25
T Problem beim Returnwert einer Methode Java Basics - Anfänger-Themen 12
M line.separator: Problem beim Lesen einer Datei Java Basics - Anfänger-Themen 11
Miladriel Problem beim Neuzeichnen nach deiconify Java Basics - Anfänger-Themen 9
R Problem beim Ausführen von Java-PGM aus der shel Java Basics - Anfänger-Themen 3
G Problem beim Sortieren einer Liste Java Basics - Anfänger-Themen 20
M Problem beim Ereignishandling mit Menü Java Basics - Anfänger-Themen 2
H problem beim zeichen im JFrame Java Basics - Anfänger-Themen 6
F Problem beim Objekteaufruf... Java Basics - Anfänger-Themen 4
E BlockChallenge: Problem beim löschen der Blöcke Java Basics - Anfänger-Themen 3
H Problem beim Verkürzen von Programm Java Basics - Anfänger-Themen 3
T Problem beim Werfen und Fangen von Exceptions Java Basics - Anfänger-Themen 2
M Problem beim Zugriff auf Daten GUI + Startklasse Java Basics - Anfänger-Themen 4
0 problem beim Polygon zeichnen Java Basics - Anfänger-Themen 3
V Problem beim erstellen eines ausführbaren Programs Java Basics - Anfänger-Themen 5
0 Problem beim Starten des Applets Java Basics - Anfänger-Themen 2
N Problem beim Durchsuchen einer LinkedList Java Basics - Anfänger-Themen 5
G Problem beim Programmieren von Blackjack Java Basics - Anfänger-Themen 15
R Problem beim Laden eines Images Java Basics - Anfänger-Themen 7
K Problem beim installieren des JDK 1.6+ version Java Basics - Anfänger-Themen 3
T Problem beim Konsolenstart Java Basics - Anfänger-Themen 5
C Problem beim Berechnen der Quadratwurzel Java Basics - Anfänger-Themen 3
C Problem beim nutzen von Teilprogrammen in main Java Basics - Anfänger-Themen 2
M Problem beim Zeichnen Java Basics - Anfänger-Themen 5
D Problem beim Kompilieren Java Basics - Anfänger-Themen 4
D Problem beim auslesen von TextArea Java Basics - Anfänger-Themen 3
G Problem beim Schreiben in Textdatei Java Basics - Anfänger-Themen 9
F ggT finden - problem beim qc Java Basics - Anfänger-Themen 4
S Problem mit url, inputStream und bytes beim Quellcode laden. Java Basics - Anfänger-Themen 6
G Habe ein Problem mit syn-Editor ( beim compilieren) Java Basics - Anfänger-Themen 4

Ähnliche Java Themen

Neue Themen


Oben