MCPcopy
hub / github.com/aio-libs/aiohttp / _release

Method _release

aiohttp/connector.py:805–835  ·  view source on GitHub ↗
(
        self,
        key: "ConnectionKey",
        protocol: ResponseHandler,
        *,
        should_close: bool = False,
    )

Source from the content-addressed store, hash-verified

803 self._release_waiter()
804
805 def _release(
806 self,
807 key: "ConnectionKey",
808 protocol: ResponseHandler,
809 *,
810 should_close: bool = False,
811 ) -> None:
812 if self._closed:
813 # acquired connection is already released on connector closing
814 return
815
816 self._release_acquired(key, protocol)
817
818 if self._force_close or should_close or protocol.should_close:
819 transport = protocol.transport
820 protocol.close()
821
822 if key.is_ssl and not self._cleanup_closed_disabled:
823 self._cleanup_closed_transports.append(transport)
824 return
825
826 self._conns[key].append((protocol, monotonic()))
827
828 if self._cleanup_handle is None:
829 self._cleanup_handle = helpers.weakref_handle(
830 self,
831 "_cleanup",
832 self._keepalive_timeout,
833 self._loop,
834 timeout_ceil_threshold=self._timeout_ceil_threshold,
835 )
836
837 async def _create_connection(
838 self, req: ClientRequest, traces: list["Trace"], timeout: "ClientTimeout"

Callers 13

test_delFunction · 0.95
test_releaseFunction · 0.95
test_release_closeFunction · 0.95
test_release_not_startedFunction · 0.95
test_release_not_openedFunction · 0.95
__del__Method · 0.80
closeMethod · 0.80

Calls 3

_release_acquiredMethod · 0.95
appendMethod · 0.80
closeMethod · 0.45