bonjour à tous
voici ce que je souhaite faire:
je veux pouvoir recevoir via le réseau des objets que je traiterai dans l'application
le temps entre chaque objet est inconnu et peut etre tres long
j'ai essayé ceci:
là , pour essayer j'ai mis des simples chaines de caracteres mais ça fige mon application
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
16
17
18 if(port > 1 && port < 65001) { /*creation du serveur */ try { serverSocket = new ServerSocket(port); soc = serverSocket.accept(); ObjectInputStream objectInputStream = new ObjectInputStream(soc.getInputStream()); while (true) { try { String chaine = (String)objectInputStream.readObject(); System.out.println("chaine: "+chaine); } catch (Exception err) { err.printStackTrace(); break; } } System.out.println("Serveur cree sur le port "+port); portField.setEnabled(false); boutonDemarrer.setEnabled(false);
est-ce qu'il est possible de mettre comme un listener sur le objectInputStream afin d'exécuter une certaine méthode lors de l'arrivée d'un objet ?
est-ce que vous voyez une autre maniere de faire ? (j'aimerai pouvoir continuer a utiliser mon application pendant qu'il attend les objets du réseau)
j'espere avoir été assez clair dans mon explication :/
merci d'avance à tous
Partager