message: Also delete rendezvous queue when the last element is popped in RecvAsync.
diff: @@ -231,7 +231,13 @@ class LocalRendezvousImpl : public Rendezvous {
  // A message has already arrived and is queued in the table under
  // this key. Consumes the message and invokes the done closure.
  Item* item = queue->front();
  +
  + // Delete the queue when the last element has been consumed.
  + if (queue->size() == 1) {
  + table_.erase(key_hash);
  + } else {
  queue->pop_front();
  + }
  mu_.unlock();
  // Invokes the done() by invoking its done closure, outside scope
  