code: protected final void runOnGlThread(final Runnable r) {
          getGVRContext().runOnGlThread(new Runnable() {
              public void run() {
                  FPSCounter.timeCheck("runOnGlThread <START>: " + r);
                  r.run();
                  FPSCounter.timeCheck("runOnGlThread <END>: " + r);
              }
          });
      }
docs: Execute a {@link Runnable} on the GL thread. If this method is called
  from the GL thread, the {@code Runnable} is executed immediately;
  otherwise, the {@code Runnable} will be executed in the next frame.
  <p>
  This differs from {@link GVRContext#runOnGlThread(Runnable)}: that method
  always queues the {@code Runnable} for execution in the next frame.
  <p>
  @param r {@link Runnable} to execute on the GL thread.