Invocation instructions: 1. run/debug TcpExample4ThreadTcpExample4DispatchServer.java 2. don't run TcpExample4HandlerThread (since it is automatically launched as needed) 3. run/debug TcpExample4Client.java Two program response logs, server and client: =================================================== =================================================== TcpExample4DispatchServer.java ant -f C:\\x3d-nps-gitlab\\NetworkedGraphicsMV3500\\examples -Dnb.internal.action.name=run.single -Djavac.includes=TcpExamples/TcpExample4DispatchServer.java -Drun.class=TcpExamples.TcpExample4DispatchServer run-single init: Deleting: C:\x3d-nps-gitlab\NetworkedGraphicsMV3500\examples\build\built-jar.properties deps-jar: Updating property file: C:\x3d-nps-gitlab\NetworkedGraphicsMV3500\examples\build\built-jar.properties Compiling 1 source file to C:\x3d-nps-gitlab\NetworkedGraphicsMV3500\examples\build\classes compile-single: run-single: TcpExamples.TcpExample4DispatchServer ready to accept socket connections... ============================================================= TcpExamples.TcpExample4DispatchServer.handlerThread created for connection #1... TcpExamples.TcpExample4DispatchServer.handlerThread is now dispatched and running, using most recent connection... TcpExamples.TcpExample4HandlerThread starting to handle a thread... TcpExamples.TcpExample4HandlerThread pausing for TIMEOUT=2000ms to emulate computation and avoid server-side overload TcpExamples.TcpExample4HandlerThread finished handling a thread, now exit. ============================================================= TcpExamples.TcpExample4DispatchServer.handlerThread created for connection #2... TcpExamples.TcpExample4DispatchServer.handlerThread is now dispatched and running, using most recent connection... TcpExamples.TcpExample4HandlerThread starting to handle a thread... TcpExamples.TcpExample4HandlerThread pausing for TIMEOUT=2000ms to emulate computation and avoid server-side overload TcpExamples.TcpExample4HandlerThread finished handling a thread, now exit. ============================================================= TcpExamples.TcpExample4DispatchServer.handlerThread created for connection #3... TcpExamples.TcpExample4DispatchServer.handlerThread is now dispatched and running, using most recent connection... TcpExamples.TcpExample4HandlerThread starting to handle a thread... TcpExamples.TcpExample4HandlerThread pausing for TIMEOUT=2000ms to emulate computation and avoid server-side overload TcpExamples.TcpExample4HandlerThread finished handling a thread, now exit. ============================================================= TcpExamples.TcpExample4DispatchServer.handlerThread created for connection #4... TcpExamples.TcpExample4DispatchServer.handlerThread is now dispatched and running, using most recent connection... TcpExamples.TcpExample4HandlerThread starting to handle a thread... TcpExamples.TcpExample4HandlerThread pausing for TIMEOUT=2000ms to emulate computation and avoid server-side overload TcpExamples.TcpExample4HandlerThread finished handling a thread, now exit. =================================================== =================================================== TcpExample4Client.java ant -f C:\\x3d-nps-gitlab\\NetworkedGraphicsMV3500\\examples -Dnb.internal.action.name=run.single -Djavac.includes=TcpExamples/TcpExample4Client.java -Drun.class=TcpExamples.TcpExample4Client run-single init: Deleting: C:\x3d-nps-gitlab\NetworkedGraphicsMV3500\examples\build\built-jar.properties deps-jar: Updating property file: C:\x3d-nps-gitlab\NetworkedGraphicsMV3500\examples\build\built-jar.properties Compiling 1 source file to C:\x3d-nps-gitlab\NetworkedGraphicsMV3500\examples\build\classes compile-single: run-single: TcpExamples.TcpExample4Client start, loop 4 times ======================================================= TcpExamples.TcpExample4Client creating new socket #1... TcpExamples.TcpExample4Client: message received from server='This message was written by the server TcpExamples.TcpExample4HandlerThread' TcpExamples.TcpExample4Client: time msec required for read=2033 ======================================================= TcpExamples.TcpExample4Client creating new socket #2... TcpExamples.TcpExample4Client: message received from server='This message was written by the server TcpExamples.TcpExample4HandlerThread' TcpExamples.TcpExample4Client: time msec required for read=2006 ======================================================= TcpExamples.TcpExample4Client creating new socket #3... TcpExamples.TcpExample4Client: message received from server='This message was written by the server TcpExamples.TcpExample4HandlerThread' TcpExamples.TcpExample4Client: time msec required for read=2014 ======================================================= TcpExamples.TcpExample4Client creating new socket #4... TcpExamples.TcpExample4Client: message received from server='This message was written by the server TcpExamples.TcpExample4HandlerThread' TcpExamples.TcpExample4Client: time msec required for read=2016 ======================================================= TcpExamples.TcpExample4Client complete BUILD SUCCESSFUL (total time: 9 seconds) =================================================== ===================================================