From e1523307f64801d85423b066a4d4e5fcebc210c2 Mon Sep 17 00:00:00 2001 From: Adam Megacz Date: Sat, 29 Aug 2009 17:18:07 -0700 Subject: [PATCH] Interpreter.java: periodically invoke dumpState if requested --- src/edu/berkeley/fleet/interpreter/Interpreter.java | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/src/edu/berkeley/fleet/interpreter/Interpreter.java b/src/edu/berkeley/fleet/interpreter/Interpreter.java index a12906e..7ff19cc 100644 --- a/src/edu/berkeley/fleet/interpreter/Interpreter.java +++ b/src/edu/berkeley/fleet/interpreter/Interpreter.java @@ -205,8 +205,20 @@ public class Interpreter extends FleetTwoFleet { protected void _terminate() { } public void run() { try { + long lastStatus = System.currentTimeMillis(); while(!isTerminated()) { flush(); + long now = System.currentTimeMillis(); + if (now - lastStatus > 2000 && !Log.quiet && + !"false".equals(System.getProperty("fleet.log.state","false"))) { + System.out.println("== State Dump ==================================================="); + for(InterpreterShip ship : ships.values()) + for(Dock d : ship) + synchronized(this) { + ((InterpreterDock)d).dumpState(); + } + lastStatus = now; + } } for(InterpreterShip ship : ships.values()) ship.reset(); -- 1.7.10.4