Mysql
 sql >> Base de données >  >> RDS >> Mysql

L'application se bloque lorsque la base de données est appelée

Appelez t.start() pour démarrer un nouveau Thread , en appelant Thread#run ne fait rien de plus puis appelle le run méthode du Thread dans le même contexte de thread...

Cela dit, Swing n'est pas thread-safe, Swing exige que toutes les mises à jour de l'interface utilisateur soient effectuées dans le contexte du thread de distribution d'événements. Au lieu d'utiliser un Thread , vous devriez envisager d'utiliser un SwingWorker , qui vous permet d'exécuter des tâches longues dans un thread d'arrière-plan, mais qui fournit une publish facile à utiliser /process méthodes et appels done lorsqu'il se termine, qui sont exécutés dans le contexte de l'EDT pour vous.

Voir Threads de travail et SwingWorker pour plus de détails