private void updateInThread() {
        // Check if throttle required
        boolean needThrottle = true;

        for (AwtPanel panel : panels) {
            if (panel.isActiveDrawing()) {
                needThrottle = false;
                break;
            }
        }

        if (lastThrottleState != needThrottle) {
            lastThrottleState = needThrottle;
            if (lastThrottleState) {
                System.out.println("OGL: Throttling update loop.");
            } else {
                System.out.println("OGL: Ceased throttling update loop.");
            }
        }

        if (needThrottle) {
            try {
                Thread.sleep(100);
            } catch (InterruptedException ex) {}
        }

        listener.update();

        for (AwtPanel panel : panels) {
            panel.onFrameEnd();
        }
    }
Accesses the listener that receives events related to this context.

@return the pre-existing instance
jme3-desktop/src/main/java/com/jme3/system/awt/AwtPanelsContext.java