Bonjour,
Je suis le tuto http://christophej.developpez.com/tu...java/javacomm/
et j'utilise le mode événementielle, ça marche très bien mais à la fin de mon programme, je n'arrive pas à fermer le bufferedReader. Le programme bloque sur close().
Voici le code :
A noter que si je n'appelle pas la méthode stop() ou si je commente " bufferedReader.close()", le programme va jusqu’à la fin mais bloque aussi (le processus ne se termine pas).
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15 public void stop() { System.out.println("SMSModem.stop()"); try { bufferedReader.close();// c'est cette appel qui bloque System.out.println("bufferedReader.close()"); outputStream.close(); System.out.println("outputStream.close()"); } catch (IOException e) { e.printStackTrace(); } serialPort.removeEventListener(); System.out.println("serialPort.removeEventListener()"); serialPort.close(); System.out.println("serialPort.close()"); }
Si quelqu'un a des pistes pour fermer proprement toutes ces ressources, je suis preneur.
Merci.
Partager