HEX
Server: LiteSpeed
System: Linux s1049.use1.mysecurecloudhost.com 4.18.0-477.27.2.lve.el8.x86_64 #1 SMP Wed Oct 11 12:32:56 UTC 2023 x86_64
User: xedaptot (3356)
PHP: 8.3.31
Disabled: NONE
Upload Files
File: //lib/python3.6/site-packages/supervisor/__pycache__/poller.cpython-36.opt-1.pyc
3

�k�`/�@s~ddlZddlZGdd�d�ZGdd�de�ZGdd�de�ZGdd	�d	e�Zd
d�Zdd
�Ze�rjeZne�rveZneZdS)�Nc@s\eZdZdd�Zdd�Zdd�Zdd�Zd	d
�Zdd�Zd
d�Z	dd�Z
dd�Zdd�ZdS)�
BasePollercCs||_|j�dS)N)�options�
initialize)�selfr�r�/usr/lib/python3.6/poller.py�__init__szBasePoller.__init__cCsdS)Nr)rrrrr
szBasePoller.initializecCst�dS)N)�NotImplementedError)r�fdrrr�register_readable
szBasePoller.register_readablecCst�dS)N)r	)rr
rrr�register_writableszBasePoller.register_writablecCst�dS)N)r	)rr
rrr�unregister_readableszBasePoller.unregister_readablecCst�dS)N)r	)rr
rrr�unregister_writableszBasePoller.unregister_writablecCst�dS)N)r	)r�timeoutrrr�pollszBasePoller.pollcCsdS)Nr)rrrr�before_daemonizeszBasePoller.before_daemonizecCsdS)Nr)rrrr�after_daemonizeszBasePoller.after_daemonizecCsdS)Nr)rrrr�close"szBasePoller.closeN)
�__name__�
__module__�__qualname__rrrrr
rrrrrrrrrrsrc@sLeZdZdd�Zdd�Zdd�Zdd�Zd	d
�Zdd�Zd
d�Z	dd�Z
dS)�SelectPollercCst|_|j�dS)N)�select�_select�_init_fdsets)rrrrr(szSelectPoller.initializecCs|jj|�dS)N)�	readables�add)rr
rrrr,szSelectPoller.register_readablecCs|jj|�dS)N)�	writablesr)rr
rrrr/szSelectPoller.register_writablecCs|jj|�dS)N)r�discard)rr
rrrr
2sz SelectPoller.unregister_readablecCs|jj|�dS)N)rr)rr
rrrr5sz SelectPoller.unregister_writablecCs|j�dS)N)r)rrrr�unregister_all8szSelectPoller.unregister_allcCs�y |jj|j|jg|�\}}}Wnztjk
r�}z\|jdtjkrZ|jj	j
d�ggfS|jdtjkr�|jj	j
d�|j�ggfS�WYdd}~XnX||fS)NrzEINTR encountered in pollzEBADF encountered in poll)
rrrr�error�args�errno�EINTRr�logger�blather�EBADFr)rr�r�w�x�errrrrr;szSelectPoller.pollcCst�|_t�|_dS)N)�setrr)rrrrrMszSelectPoller._init_fdsetsN)rrrrrrr
rrrrrrrrr&src@sLeZdZdd�Zdd�Zdd�Zdd�Zd	d
�Zdd�Zd
d�Z	dd�Z
dS)�
PollPollercCs:tj�|_tjtjBtjB|_tj|_t	�|_
t	�|_dS)N)rr�_pollerZPOLLINZPOLLPRIZPOLLHUP�READZPOLLOUT�WRITEr+rr)rrrrrSs

zPollPoller.initializecCs |jj||j�|jj|�dS)N)r-�registerr.rr)rr
rrrrZszPollPoller.register_readablecCs |jj||j�|jj|�dS)N)r-r0r/rr)rr
rrrr^szPollPoller.register_writablecCs6|jj|�|jj|�||jkr2|jj||j�dS)N)rrr-�
unregisterrr0r/)rr
rrrr
bs
zPollPoller.unregister_readablecCs6|jj|�|jj|�||jkr2|jj||j�dS)N)rrr-r1rr0r.)rr
rrrrhs
zPollPoller.unregister_writablecCsd|j|�}gg}}xF|D]>\}}|j||�r0q||j@rD|j|�||j@r|j|�qW||fS)N)�	_poll_fds�_ignore_invalidr.�appendr/)rrZfdsrrr
�	eventmaskrrrrns




zPollPoller.pollcCs^y|jj|d�Stjk
rX}z*|jdtjkrF|jjj	d�gS�WYdd}~XnXdS)Ni�rzEINTR encountered in poll)
r-rrr r!r"r#rr$r%)rrr*rrrr2zszPollPoller._poll_fdscCs6|tj@r2|jj|�|jj|�|jj|�dSdS)NTF)rZPOLLNVALr-r1rrr)rr
r5rrrr3�s
zPollPoller._ignore_invalidN)rrrrrrr
rrr2r3rrrrr,Qs	r,c@sdeZdZdZdZdd�Zdd�Zdd�Zd	d
�Zdd�Z	d
d�Z
dd�Zdd�Zdd�Z
dd�ZdS)�KQueuePollerz.
    Wrapper for select.kqueue()/kevent()
    i�cCstj�|_t�|_t�|_dS)N)r�kqueue�_kqueuer+rr)rrrrr�s
zKQueuePoller.initializecCs0|jj|�tj|tjtjd�}|j||�dS)N)�filter�flags)rrr�kevent�KQ_FILTER_READ�	KQ_EV_ADD�_kqueue_control)rr
r;rrrr�s

zKQueuePoller.register_readablecCs0|jj|�tj|tjtjd�}|j||�dS)N)r9r:)rrrr;�KQ_FILTER_WRITEr=r>)rr
r;rrrr�s

zKQueuePoller.register_writablecCs0tj|tjtjd�}|jj|�|j||�dS)N)r9r:)rr;r<�KQ_EV_DELETErrr>)rr
r;rrrr
�s

z KQueuePoller.unregister_readablecCs0tj|tjtjd�}|jj|�|j||�dS)N)r9r:)rr;r?r@rrr>)rr
r;rrrr�s

z KQueuePoller.unregister_writablecCs^y|jj|gd�WnDtk
rX}z(|jtjkrF|jjjd|�n�WYdd}~XnXdS)Nrz7EBADF encountered in kqueue. Invalid file descriptor %s)r8�control�OSErrorr"r&rr$r%)rr
r;r rrrr>�s

zKQueuePoller._kqueue_controlcCs�gg}}y|jjd|j|�}WnFtk
rf}z*|jtjkrT|jjjd�||fS�WYdd}~XnXx<|D]4}|j	t
jkr�|j|j
�|j	t
jkrn|j|j
�qnW||fS)NzEINTR encountered in poll)r8rA�
max_eventsrBr"r#rr$r%r9rr<r4Zidentr?)rrrrZkeventsr r;rrrr�s

zKQueuePoller.pollcCs|j�dS)N)r)rrrrr�szKQueuePoller.before_daemonizecCsBtj�|_x|jD]}|j|�qWx|jD]}|j|�q,WdS)N)rr7r8rrrr)rr
rrrr�s

zKQueuePoller.after_daemonizecCs|jj�d|_dS)N)r8r)rrrrr�s
zKQueuePoller.closeN)rrr�__doc__rCrrrr
rr>rrrrrrrrr6�s
r6cCs
ttd�S)Nr)�hasattrrrrrr�implements_poll�srFcCs
ttd�S)Nr7)rErrrrr�implements_kqueue�srG)	rr"rrr,r6rFrGZPollerrrrr�<module>s"+>O