PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Threading-Fehler finden


Senior Sanchez
2006-11-03, 15:22:25
Hi,

Ich schreibe gerade an einer größeren Java-Swing-Applikation und ich habe irgendwo einen Threading-Fehler drin, sprich, da findet ne GUI-Änderung statt und es geht nicht durch den EDT. Ich finde aber die Stelle absolut nicht, keine Ahnung was ich noch machen soll.

Hat jemand vllt nen Tipp?

EgonOlsen
2006-11-03, 16:01:34
Weißt du denn, welche GUI-Elemente es etwa betrifft? Du könntest dann die in Frage kommenden Instanzen durch eine entsprechende generische Proxyklasse (als Implementierung von java.lang.reflect.InvocationHandler) ersetzen, die alle Aufrufe durchschleift aber vorher den aktuellen Thread kontrolliert und den Aufruf meldet, wenn es nicht der Eventthread ist. Aber ist nur 'ne Idee...mag eine blöde sein...

Senior Sanchez
2006-11-03, 16:12:01
Weißt du denn, welche GUI-Elemente es etwa betrifft? Du könntest dann die in Frage kommenden Instanzen durch eine entsprechende generische Proxyklasse (als Implementierung von java.lang.reflect.InvocationHandler) ersetzen, die alle Aufrufe durchschleift aber vorher den aktuellen Thread kontrolliert und den Aufruf meldet, wenn es nicht der Eventthread ist. Aber ist nur 'ne Idee...mag eine blöde sein...

Ja, ich weiß, welche Elemente es ungefähr betrifft.
Könnteste auf die schnelle mal ne Beispielimplementierung angeben?

Ich hasse diese Threading-Fehler, da sucht man sich echt tot!

EgonOlsen
2006-11-03, 16:39:24
Hier gibt es mehr Infos: http://java.sun.com/j2se/1.3/docs/guide/reflection/proxy.html. Musst ein bisschen runterscrollen, da ist auch ein einfaches Beispiel angegeben, wenn du den ganzen Schwampf oben nicht lesen magst. Ist im Prinzip ganz einfach, auch wenn es erst etwas wild aussehen mag. Ich benutze sowas für ähnliche Zwecke bei Serveranwendungen, daher dachte ich, es könnte hier auch nützlich sein.