⚝
One Hat Cyber Team
⚝
Your IP:
216.73.216.30
Server IP:
45.79.8.107
Server:
Linux localhost 5.15.0-140-generic #150-Ubuntu SMP Sat Apr 12 06:00:09 UTC 2025 x86_64
Server Software:
nginx/1.18.0
PHP Version:
8.1.2-1ubuntu2.21
Buat File
|
Buat Folder
Eksekusi
Dir :
~
/
lib
/
python3.10
/
__pycache__
/
View File Name :
selectors.cpython-310.pyc
o }5hPL @ s d Z ddlmZmZ ddlmZ ddlmZ ddlZddl Z ddl Z dZdZdd Z ed g dZde_ e jd krIdej_ dej_ dej_ dej_ G dd deZG dd dedZG dd deZG dd deZG dd deZee drG dd deZee d rG d!d" d"eZee d#rG d$d% d%eZee d&rG d'd( d(eZd)d* Zed&reZdS ed reZdS ed#reZdS edreZdS eZdS )+z|Selectors module. This module allows high-level and efficient I/O multiplexing, built upon the `select` module primitives. )ABCMetaabstractmethod) namedtuple)MappingN c C s` t | tr| }nzt| }W n tttfy" td| dw |dk r.td||S )zReturn a file descriptor from a file object. Parameters: fileobj -- file object or file descriptor Returns: corresponding file descriptor Raises: ValueError if the object is invalid zInvalid file object: {!r}Nr zInvalid file descriptor: {}) isinstanceintfilenoAttributeError TypeError ValueErrorformat)fileobjfd r /usr/lib/python3.10/selectors.py_fileobj_to_fd s r SelectorKey)r r eventsdatazSelectorKey(fileobj, fd, events, data) Object used to associate a file object to its backing file descriptor, selected event mask, and attached data. ) zFile object registered.zUnderlying file descriptor.z3Events that must be waited for on this file object.zzOptional opaque data associated to this file object. For example, this could be used to store a per-client session ID.c @ s0 e Zd ZdZdd Zdd Zdd Zdd Zd S )_SelectorMappingz)Mapping of file objects to selector keys.c C s || _ d S N) _selector)selfselectorr r r __init__@ z_SelectorMapping.__init__c C t | jjS r )lenr _fd_to_keyr r r r __len__C z_SelectorMapping.__len__c C s: z | j |}| j j| W S ty td|d w N{!r} is not registered)r _fileobj_lookupr" KeyErrorr )r r r r r r __getitem__F s z_SelectorMapping.__getitem__c C r r )iterr r" r# r r r __iter__M r% z_SelectorMapping.__iter__N)__name__ __module____qualname____doc__r r$ r* r, r r r r r = s r c @ sn e Zd ZdZedddZedd ZdddZedd d Zdd Z d d Z edd Zdd Zdd Z dS )BaseSelectora- Selector abstract base class. A selector supports registering file objects to be monitored for specific I/O events. A file object is a file descriptor or any object with a `fileno()` method. An arbitrary object can be attached to the file object, which can be used for example to store context information, a callback, etc. A selector can use various implementations (select(), poll(), epoll()...) depending on the platform. The default `Selector` class uses the most efficient implementation on the current platform. Nc C t )a3 Register a file object. Parameters: fileobj -- file object or file descriptor events -- events to monitor (bitwise mask of EVENT_READ|EVENT_WRITE) data -- attached data Returns: SelectorKey instance Raises: ValueError if events is invalid KeyError if fileobj is already registered OSError if fileobj is closed or otherwise is unacceptable to the underlying system call (if a system call is made) Note: OSError may or may not be raised NotImplementedErrorr r r r r r r register` s zBaseSelector.registerc C r2 )aj Unregister a file object. Parameters: fileobj -- file object or file descriptor Returns: SelectorKey instance Raises: KeyError if fileobj is not registered Note: If fileobj is registered but has since been closed this does *not* raise OSError (even if the wrapped syscall does) r3 )r r r r r unregisterw zBaseSelector.unregisterc C s | | | |||S )ay Change a registered file object monitored events or attached data. Parameters: fileobj -- file object or file descriptor events -- events to monitor (bitwise mask of EVENT_READ|EVENT_WRITE) data -- attached data Returns: SelectorKey instance Raises: Anything that unregister() or register() raises )r7 r6 r5 r r r modify s zBaseSelector.modifyc C r2 )aq Perform the actual selection, until some monitored file objects are ready or a timeout expires. Parameters: timeout -- if timeout > 0, this specifies the maximum wait time, in seconds if timeout <= 0, the select() call won't block, and will report the currently ready file objects if timeout is None, select() will block until a monitored file object becomes ready Returns: list of (key, events) for ready file objects `events` is a bitwise mask of EVENT_READ|EVENT_WRITE r3 )r timeoutr r r select r8 zBaseSelector.selectc C s dS )zmClose the selector. This must be called to make sure that any underlying resource is freed. Nr r# r r r close s zBaseSelector.closec C sB | }|du rtdz|| W S ty td|dw )zzReturn the key associated to a registered file object. Returns: SelectorKey for this file object NzSelector is closedr' )get_mapRuntimeErrorr) r )r r mappingr r r get_key s zBaseSelector.get_keyc C r2 )z2Return a mapping of file objects to selector keys.r3 r# r r r r= s zBaseSelector.get_mapc C s | S r r r# r r r __enter__ s zBaseSelector.__enter__c G s | d S r )r<