pendingResponse = new DeferredFuture(); $this->requestHeaderCompletion = new DeferredFuture(); $this->requestBodyCompletion = new DeferredFuture(); $this->body = new Queue(); $this->deferredCancellation = new DeferredCancellation(); $this->cancellation = new CompositeCancellation($cancellation, $this->deferredCancellation->getCancellation()); // Trailers future may never be exposed to the user if the request fails, so ignore. $this->trailers = new DeferredFuture(); $this->trailers->getFuture()->ignore(); } public function cancel(): void { $this->deferredCancellation->cancel(); } public function __destruct() { if ($this->transferWatcher !== null) { EventLoop::cancel($this->transferWatcher); } if ($this->inactivityWatcher !== null) { EventLoop::cancel($this->inactivityWatcher); } $this->deferredCancellation->cancel(); // Setting these to null due to PHP's random destruct order on shutdown to avoid errors from double completion. $this->pendingResponse = null; $this->body = null; $this->trailers = null; } public function disableInactivityWatcher(): void { if ($this->inactivityWatcher === null) { return; } EventLoop::disable($this->inactivityWatcher); } public function enableInactivityWatcher(): void { if ($this->inactivityWatcher === null) { return; } $watcher = $this->inactivityWatcher; EventLoop::disable($watcher); EventLoop::enable($watcher); } } __halt_compiler();----SIGNATURE:----oECTzN6Vbw109o9UXWmbGGdRrvASzqmjs9dto6qyfA+E4YH7BT/0OFg1gpcUZkCYVv4R+/tulgYG81O6+nog3Y/bkQkQjUf8UF6hW+5z5d4LAFIsef4W3V7JKoqonlRmTeGOcuQdjvYaPbkaYhDq52FY3kf7t/tFKy/Y2y3zbVt3cMUQIEFejDKLM9MLgnY47pa20v4jhR7ND0uhw2ut4JChl6rq2f1fDpgUwX7pteeKBfEkI2W42ER8QtUJ4Az4USSph8JCtqP69j0UbAmU54o20neERN6cLQPOzEX0Y6RSdgW/jTLjeIj+Sb8IP3cWyxKNQ5JIl4vqZP2avuyjZME5sA03kQ7X4o9sFm6Dj37j0KUJzZ5n+j3fCnZ8o5wlEt5nexE5fKMWsIJVmximjm5EP/qPdzLhmhs7MOMK1FGLGx8Sqea15lmOoY4630GlIJQorw637DjPj3YWl+b0WOvOnCWnQ+e5dSvIlt9T7s3UiakGHgLIv9KZQsc1qIlioVR/Bpv4NGKTcr0ESHA73Ylbq9lmGirjEiY2/xVdNnnb/NfeXPrGX7nXDM91lvRnN5xMVfDBWvY5oda/5wi67p3hzP3uSqk3oWhyDUK4f+ec1982zVjRDUigwg4bCnB1tvtG00OX5jvcK/frXVcKk0Oi68Xd5D29TzK4TWEw5x4=----ATTACHMENT:----MzMyODc4NzI3NTQwMjI2NSA5MjY2MTI3NTEzNzI4MzgwIDE5MzEzNDcxOTQwODg2Mg==