[AN9W d Z ddlZddlZddlZddlZddlZddlmZ ddlm Z m Z mZmZm Z ddlmZ ddlmZ ddlmZ dd lmZ dd lmZ ddlmZ ddlZej Zn# e$ r dZeZY nw xY wdZ G d dej Z! G d de! Z"dS )z%Async gunicorn worker for aiohttp.web N) FrameType)Any AwaitableCallableOptionalUnion)AccessLogFormat)base)web ) set_result)Application)AccessLogger)GunicornWebWorkerGunicornUVLoopWebWorkerc e Zd Zej Zej Zde de ddf fdZ d fdZddZddZ dd Z dded ddfdZdd Zdedee ddfdZdedee ddfdZede ddfd ZdedefdZ xZS )r argskwreturnNc d t j |i | d | _ d| _ d | _ d S Nr )super__init___task exit_code_notify_waiter)selfr r __class__s b/builddir/build/BUILD/cloudlinux-venv-1.0.10/venv/lib64/python3.11/site-packages/aiohttp/worker.pyr zGunicornWebWorker.__init__% s; $%"%%%37 >B c t j t j | _ t j | j t d S N)asyncioget_event_loopclosenew_event_looploopset_event_loopr init_process)r r s r r) zGunicornWebWorker.init_process, s] &&(((*,, ty))) r c | j | | _ | j | j n*# t $ r | j d Y nw xY w| j | j | j t j | j d S )NzException in gunicorn worker) r' create_task_runr run_until_complete Exceptionlog exceptionshutdown_asyncgensr% sysexitr r s r runzGunicornWebWorker.run5 s Y**499;;77 ?I((4444 ? ? ?H=>>>>> ? $$TY%A%A%C%CDDD s A $A:9A:c n K d }t | j t r| j }nt j | j rA| d {V }t |t j r |}|j }n*|}n't d | j |p| j j r| j j nd }t j || j | j j || | j j | j j dz dz }| d {V | j j r| | j nd }|}|J |j }|J | j D ]3}t j ||| }| d {V 4t3 j } | j r| |j } | j r.| | j k r#d| _ | j d| np| t3 j k r?| j t3 j! k r#d| _ | j d| n| " d {V | j n# tF $ r Y nw xY w|$ d {V d S ) NzUwsgi app should be either Application or async function returning Application, got {}d _ )loggerkeepalive_timeout access_logaccess_log_formatshutdown_timeout)ssl_contextFzMax requests, shutting down: %sz!Parent changed, shutting down: %s)% isinstancewsgir r# iscoroutinefunctionr AppRunnerappRuntimeErrorformatcfg accesslogr/ r; keepalive_get_valid_log_formatr<