From 968f91e63d7af40bdad357147307cc95ce1159a9 Mon Sep 17 00:00:00 2001 From: brutzman <brutzman@nps.edu> Date: Mon, 20 Dec 2021 21:52:14 -0800 Subject: [PATCH] forcibly killing threads and clearing buffers --- .../dis7/utilities/DisThreadedNetworkInterface.java | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/src/edu/nps/moves/dis7/utilities/DisThreadedNetworkInterface.java b/src/edu/nps/moves/dis7/utilities/DisThreadedNetworkInterface.java index 3268176ea2..eb82107eda 100644 --- a/src/edu/nps/moves/dis7/utilities/DisThreadedNetworkInterface.java +++ b/src/edu/nps/moves/dis7/utilities/DisThreadedNetworkInterface.java @@ -479,6 +479,7 @@ public class DisThreadedNetworkInterface } try { // operations are finished + pdus2send.clear(); dos.close(); this.close(); } @@ -536,8 +537,10 @@ public class DisThreadedNetworkInterface try { - senderThread.join(2000); // wait for thread to die, msec max duration - receiverThread.join(2000); // wait for thread to die, msec max duration + senderThread.join(4000); // wait for thread to die, msec max duration + receiverThread.join(4000); // wait for thread to die, msec max duration + senderThread = null; // make sure + receiverThread = null; // make sure } catch (InterruptedException ie) { @@ -567,6 +570,8 @@ public class DisThreadedNetworkInterface } } datagramSocket = null; // make sure + System.err.flush(); // ensure all output sent + System.out.flush(); // ensure all output sent } /** Thread sleep for indicated interval -- GitLab