J'ai besoin d'exécuter/afficher une série d'événements d'un Arraylist à un JTextArea, cependant, chaque événement est exécuté avec un temps différent. Voici le code, il échoue alors en deuxième événement dans la boucle:java swing texte d'accès concurrentiel dans JTextArea avec une boucle
Thread worker = new Thread(new Runnable()
{
public void run()
{
while (eventList.size() > 0)
for (Event ev : eventList)
if(ev.ready())
{
/*try
{
Thread.sleep(1000);
} catch (InterruptedException e1)
{
e1.printStackTrace();
}*/
jTextArea.append(ev.toString() + "\n");
eventList.remove(ev);
}
}
});
worker.start();
Il échoue "comment?". Sans 'dormir', il va tuer le CPU. – khachik
Vous pouvez supprimer la boucle while et supprimer eventList.remove (ev); ligne – Enrique