docs: public void free()
      {
          this.stopThisThread();      // This needs to be called first (even though super.free() calls it).
          super.free();               // Free all the filters next (This is also tell the remotesessions to clean up).
          if (m_receiveQueue != null)
          {
              try {
                  m_receiveQueue.freeRemoteSession();
              } catch (RemoteException ex)    {
                  ex.printStackTrace();
              }
          }
          m_receiveQueue = null;
      }