public void Dispose()
 {
     disposed = true;
     if (queue != null)
     {
         queue.Stop();
     }
     if (listeningSocket != null)
     {
         listeningSocket.Close();
     }
 }