Файловый менеджер - Редактировать - /opt/imh-python/lib/python3.9/site-packages/gunicorn/workers/__pycache__/ggevent.cpython-39.pyc
Ðазад
a j�h� � @ sT d dl Z d dlZd dlZd dlmZ d dlmZ d dlZzd dlZW n ey^ e d��Y n(0 d dl mZ eej�ed�k r�e d��d dl mZ d dlmZ d d lmZmZmZmZ d dlZd d lmZ d dlmZ dejejf Zejfd d�Zdd� ZG dd� de�ZG dd� de�Z G dd� dej!�Z"G dd� dej#�Z$G dd� de�Z%dS )� N)�datetime)�partialz+gevent worker requires gevent 1.4 or higher)� parse_versionz1.4)�Pool)�StreamServer)�hub�monkey�socket�pywsgi)�base_environ)�AsyncWorkerzgevent/%s gunicorn/%sc C sZ z|| |||�W S t yR } z*|jd tjkr<t�| � n� W Y d }~q d }~0 0 q d S )Nr )�OSError�args�errno�EAGAINr Z wait_write)ZfdoutZfdin�offset�nbytesZ_os_sendfile�e� r ��/root/rpmbuild/BUILDROOT/imh-python39-modules-3.9.7-92.el8.x86_64/opt/imh-python/lib/python3.9/site-packages/gunicorn/workers/ggevent.py�_gevent_sendfile! s r c C s t tdt� d S )N�sendfile)�setattr�osr r r r r �patch_sendfile+ s r c sx e Zd ZdZdZdd� Z� fdd�Zdd� Zdd � Z� fd d�Z � fdd �Z � fdd�Z� fdd�Z� fdd�Z � ZS )�GeventWorkerNc C sH t �� t� g }| jD ]$}|�tj|jtj|j� � d�� q|| _d S )N)�fileno) r Z patch_allr �sockets�appendr ZFAMILY�SOCK_STREAM�sockr )�selfr �sr r r �patch4 s � zGeventWorker.patchc s4 t � �� | jt�� kr0| j�d| � t�d� d S )Nz!Parent changed, shutting down: %sr ) �super�notifyZppidr �getppid�log�info�sys�exit�r! �� __class__r r r% A s zGeventWorker.notifyc C s t �| jjd�S )NF)�gevent�Timeout�cfg� keepaliver+ r r r �timeout_ctxG s zGeventWorker.timeout_ctxc C s� g }i }| j jr&tf ddi| j j��}| jD ]�}|�d� t| j�}| jd ur�t | j �}|� dtd�� | j|f| j|| j | j|d�|��}n"t| j|�}t|f||d�|��}|�� |�|� q,| jr�| �� t�d� q�z�|D ](}t|d�r�|�� t|d �r�|�� q�t�� }t�� | | j jk�rzd } |D ]"}|j�� |jjk�r4| d7 } �q4| �sdW d S | �� t�d� �q| j � d| j! � |D ]}|j"dd� �q�W n Y n0 d S ) N�server_sideT� )zwsgi.multithread�SERVER_SOFTWARE)Zapplication�spawnr'