Bonjour à tous,

Voila, je suis entrain de développer une IHM (Interface Homme/Machine)avec JAVA. Cet IHM communique avec un automate et me permet d'échanger des données: les afficher et y écrire.

Pour se faire, l'affichage se rafraichit toutes les secondes ou 10 secondes (cela dépend de ce que je souhaite afficher) avec l'aide d'un TimerTask dans lequel je lance ma méthode de rafraichissement (lecture des variables automates, traitements et mise à jour de mes composants).

Jusque là, tout va bien.

Comme pour toute IHM, je dois permettre à l'utilisateur d'entrer des valeurs sur certain champ: des Integer et des Boolean sont les plus fréquemment utilisés.

Pour envoyer une valeur vers mon automate (idem pour la lecture) j'utilise des JavaBeans fournis par le manufacturier (SIEMENS).
En ce qui concerne l'envoie d'entier, il n'y a pas de probleme, mais des que j'envoie un boolean, cela arrete le rafraichissement.


Bien évidemment, j'ai regardé ce qui pourrait l'arreter, mais je ne vois pas quoi, d'autant plus que cela n'apparait que pour les boolean.


Donc ma question est de savoir ce qui pourrait arreter un TimerTask mis à part un TimerTask.cancel().

Est ce qu'un propertyChangeEvent ou un ActionEvent peut arreter un TimerTask?

Est ce que c'est mieux d'utiliser un TimerTask ou un Thread?


MustOne