private function clear(Client $client)
{
$client->requestParser = null;
// break cyclic reference
$client->onWriteDrain = null;
\Amp\cancel($client->readWatcher);
\Amp\cancel($client->writeWatcher);
$this->clearKeepAliveTimeout($client);
unset($this->clients[$client->id]);
if ($this->stopPromisor && empty($this->clients)) {
$this->stopPromisor->succeed();
}
}