From 9030d266605c394038152fb6a4dac172ae8c1c1e Mon Sep 17 00:00:00 2001 From: "Norbraten, Terry" <tdnorbra@nps.edu> Date: Thu, 4 Jun 2020 19:45:31 -0700 Subject: [PATCH] minimize object creation in loops --- src/edu/nps/moves/dis7/utilities/DisNetworking.java | 5 +++-- src/edu/nps/moves/dis7/utilities/DisThreadedNetIF.java | 2 +- 2 files changed, 4 insertions(+), 3 deletions(-) diff --git a/src/edu/nps/moves/dis7/utilities/DisNetworking.java b/src/edu/nps/moves/dis7/utilities/DisNetworking.java index 4250a07d1a..8fcf76bf18 100644 --- a/src/edu/nps/moves/dis7/utilities/DisNetworking.java +++ b/src/edu/nps/moves/dis7/utilities/DisNetworking.java @@ -81,8 +81,8 @@ public class DisNetworking rsocket = new MulticastSocket(DIS_PORT); InetAddress maddr = InetAddress.getByName(MCAST_GROUP); - rsocket.setNetworkInterface(findIp4Interface()); - rsocket.joinGroup(maddr); + InetSocketAddress group = new InetSocketAddress(maddr, DIS_PORT); + rsocket.joinGroup(group, findIp4Interface()); byte buffer[] = new byte[MAX_DIS_PDU_SIZE]; packet = new DatagramPacket(buffer, buffer.length); @@ -90,6 +90,7 @@ public class DisNetworking rsocket.receive(packet); //blocks here waiting for next DIS pdu to be received on broadcast IP and specified port //System.out.println("packet received from " + packet.getSocketAddress()); + rsocket.leaveGroup(group, findIp4Interface()); rsocket.close(); rsocket = null; return new BuffAndLength(packet.getData(), packet.getLength()); diff --git a/src/edu/nps/moves/dis7/utilities/DisThreadedNetIF.java b/src/edu/nps/moves/dis7/utilities/DisThreadedNetIF.java index 9c4cb092cb..dda4e59a27 100644 --- a/src/edu/nps/moves/dis7/utilities/DisThreadedNetIF.java +++ b/src/edu/nps/moves/dis7/utilities/DisThreadedNetIF.java @@ -187,7 +187,7 @@ public class DisThreadedNetIF byte buffer[] = new byte[MAX_DIS_PDU_SIZE]; DatagramPacket packet = new DatagramPacket(buffer, buffer.length); InetAddress maddr; - InetSocketAddress group; + InetSocketAddress group = null; Pdu pdu; ByteBuffer byteBuffer; -- GitLab