Maxxx Geschrieben October 10, 2024 at 17:25 Share Geschrieben October 10, 2024 at 17:25 Hallo zusammen, ich habe versucht, einen DisconnectedListener zu implementieren, stoße dabei aber auf Probleme. Wenn ich die LAN-Verbindung zwischen der Ethernet Extension und dem Brick unterbreche, wird der DisconnectedListener nicht ausgelöst. Auch beim Trennen der Stromversorgung passiert nichts. Erst als ich einen ConnectedListener hinzugefügt und AutoReconnect aktiviert habe, wurde der DisconnectedListener ausgelöst. Allerdings geschieht dies genau zu dem Zeitpunkt, an dem sich der AutoReconnect wieder verbindet (also wenn der ConnectedListener ausgeführt wird), was etwas dauert. Der DisconnectedListener wird also nicht direkt beim Verlust der Verbindung aktiviert. Entferne ich AutoReconnect und den ConnectedListener wieder, wird der DisconnectedListener überhaupt nicht ausgelöst. Ist dieses Verhalten so gewollt? Es erscheint mir ziemlich unsinnig, wenn beide Listener quasi zur gleichen Zeit triggern. Was kann ich tun? Was mache ich falsch? Was habe ich nicht verstanden? :D public void connectToStack() { try { ipCon = new IPConnection(); ipCon.setTimeout(250); ipCon.setAutoReconnect(true); ipCon.addDisconnectedListener(new IPConnection.DisconnectedListener() { public void disconnected(short disconnectReason) { System.out.println("Disco"); } }); ipCon.addConnectedListener(new IPConnection.ConnectedListener() { public void connected(short con) { System.out.println("conn"); } }); ipCon.connect(hostname, port); logger.info( String.format("Successfully connected to Tinkerforge stack #%s (%s:%s)", number, hostname, port)); isConnectedToStack = true; } catch (NetworkException | AlreadyConnectedException e) { logger.severe( String.format("Failed to connect to Tinkerforge stack #%s (%s:%s)", number, hostname, port)); isConnectedToStack = false; } } Viele Grüße Zitieren Link zu diesem Kommentar Share on other sites More sharing options...
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.