zmc
2023-12-22 9fdbf60165db0400c2e8e6be2dc6e88138ac719a
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
U
 ý°dGã@s²ddlmZddlZddlZddlmZddgZddddd    dd
œd d „Zddddd    dd
œd d„Zddœdd„Z    ddddd    dd
œdd„a
ddd    ddœdd„Z ddd    ddœdd„Z dS)é)Ú annotationsN)ÚpartialÚ wait_for_readÚwait_for_writeFz socket.socketÚboolú float | None)ÚsockÚreadÚwriteÚtimeoutÚreturnc
Csb|s|stdƒ‚g}g}|r&| |¡|r4| |¡ttj|||ƒ}||ƒ\}}}    t|p^|p^|    ƒS)Nú2must specify at least one of read=True, write=True)Ú RuntimeErrorÚappendrÚselectr)
rr    r
r ÚrcheckÚwcheckÚfnÚrreadyÚwreadyÚxready©rúHd:\z\workplace\vscode\pyvenv\venv\Lib\site-packages\urllib3/util/wait.pyÚselect_wait_for_socket!s
 
rcsd|s|stdƒ‚d}|r"|tjO}|r0|tjO}t ¡‰ˆ ||¡dddœ‡fdd„ }t||ƒƒS)Nr rrzlist[tuple[int, int]])Útr cs|dk    r|d9}ˆ |¡S)Niè)Úpoll)r©Úpoll_objrrÚdo_pollJsz%poll_wait_for_socket.<locals>.do_poll)rrÚPOLLINÚPOLLOUTrÚregisterr)rr    r
r ÚmaskrrrrÚpoll_wait_for_socket9s
 
 r#)r c    Cs:zt ¡}| d¡Wnttfk
r0YdSXdSdS)NrFT)rrÚAttributeErrorÚOSErrorrrrrÚ_have_working_pollRs r&cCs(tƒr tanttdƒrtat||||ƒS)Nr)r&r#Úwait_for_socketÚhasattrrr)rr    r
r rrrr'_s
 
r')rr r cCst|d|dS)z†Waits for reading to be available on a given socket.
    Returns True if the socket is readable, or False if the timeout expired.
    T)r    r ©r'©rr rrrrqscCst|d|dS)z†Waits for writing to be available on a given socket.
    Returns True if the socket is readable, or False if the timeout expired.
    T)r
r r)r*rrrrxs)FFN)FFN)FFN)N)N) Ú
__future__rrÚsocketÚ    functoolsrÚ__all__rr#r&r'rrrrrrÚ<module>s&  üüü