V
vanny
Gast
Hmpf,
ich bin da wohl einem Irrtum erlegen.
Dass Swingkomponenten nicht threadsafe sind ist mir ja bekannt, und genau dafür gibt es ja eigendlich invokeLater/invokeAndWait.
Bisher habe ich es so gehalten, längere Berechnungen in einem neuen Thread zu starten und die jeweiligen GUI-Aktionen mit invokeLater an den EDT übergeben.(ist ja auch so gedacht)
Nun habe ich ein Programm geschrieben, das Daten aus der DB holt und diese dann in einer JList auflistet.
im
getestet und lost updates ohne Ende
mit invokeAndWait jedoch funktioniert es, jedoch sehr langsam.
Hat jemand mal ne kurze und knackige Erklärung zur Hand, wie sich das nun wirklich mit dem invokeLater verhält?
Danke
und Gruß
Vanny
ich bin da wohl einem Irrtum erlegen.
Dass Swingkomponenten nicht threadsafe sind ist mir ja bekannt, und genau dafür gibt es ja eigendlich invokeLater/invokeAndWait.
Bisher habe ich es so gehalten, längere Berechnungen in einem neuen Thread zu starten und die jeweiligen GUI-Aktionen mit invokeLater an den EDT übergeben.(ist ja auch so gedacht)
Nun habe ich ein Programm geschrieben, das Daten aus der DB holt und diese dann in einer JList auflistet.
im
Java:
while(rs.next()){
//blabla Daten holen
//und dann:
SwingUtilities.invokeLater(new Runnable() {
public void run() {
datenModel.add(daten);
}
});
}
getestet und lost updates ohne Ende
mit invokeAndWait jedoch funktioniert es, jedoch sehr langsam.
Hat jemand mal ne kurze und knackige Erklärung zur Hand, wie sich das nun wirklich mit dem invokeLater verhält?
Danke
und Gruß
Vanny