Viewing File: /opt/alt/python38/lib64/python3.8/site-packages/psutil/__pycache__/_common.cpython-38.opt-1.pyc
U
Œ=Ý_jf ã N @ s8 d Z ddlmZmZ ddlZddlZddlZddlZddlZddl Z ddl
Z
ddlZddlZddl
mZ ddl
mZ ddlmZ ddlmZ ddlmZ zdd lmZ W n ek
rÀ dZY nX zdd
lmZ W n ek
rê dZY nX e
jdkrddlZndZe
jd dkZd
ddddddddddddddddddd d!d"d#d$d%d&d'd(d)d*d+d,d-d.d/d0d1d2d3d4d5d6d7d8d9d:d;d<d=d>d?d@dAdBdCdDdEdFdGdHdIdJdKdLdMdNdOdPdQdRdSdTdUdVdWdXdYdZgNZejd[kZejd\kZe
j d]¡Ze
j d^¡Z e Z!e
j d_¡Z"e
j d`¡Z#e
j da¡Z$e"pe#pe$Z%e
j db¡Z&e
j dc¡Z'ddZ(deZ)dfZ*dgZ+dhZ,diZ-djZ.dkZ/dlZ0dmZ1dnZ2doZ3dpZ4dqZ5drZ6dsZ7dtZ8duZ9dvZ:dwZ;dxZ<dyZ=dzZ>d{Z?d|Z@d}ZAedkr°d~ZBdZCdZDn G d€d„ dejEƒZFeGƒ HeFjI¡ edkräd‚ZJdƒZKn G d„d…„ d…ejEƒZLeGƒ HeLjI¡ e
M¡ ZNesd†ZOn2ze
P¡ ZOW n$ eQk
rH er@d‡nd†ZOY nX edHdˆd‰dŠd‹dŒdgƒZRedDdˆd‰dŠd‹gƒZSedBdŽddd‘d’d“gƒZTedCd”d•d–d—d˜d™gƒZUedEdšd›dœddždŸd d¡gƒZVedId¢d£d¤d¥d¦gƒZWed@d§d¨d©dªd«d¬d¦gƒZXedFd¨dd®d¯d°gƒZYedGd±d²d³d´gƒZZedAdµd¶d·d¸gƒZ[ed¹dºd»d¼gƒZ\ed½d¾dºd¿dÀgƒZ]edÁd‹dÂdÃgƒZ^edÄd¾dºgƒZ_ed8dÅdÆdÇdÈgƒZ`ed=dÉd§gƒZaed>dÊdËdÌgƒZbed?dÍdÎdÏgƒZced:dÍdÎdÏgƒZded;dŽddd‘gƒZeed<dÐdÑgƒZfed9dÒdÓgƒZged7d§d¨d©dªd«d¬gƒZhedÔdÕdÖgƒZieeegeegfeegegfegegfeegegfegegfeegeegfegeegfegeegfdלZjedk rej HegegfegegfdØœ¡ edk r²ej HdÙegeegfi¡ G dÚdÛ„ dÛekƒZlG dÜdÝ„ dÝelƒZmG dÞdß„ dßemƒZnG dàdá„ dáelƒZoG dâdã„ dãelƒZpddädP„ZqdådM„ Zrdædç„ ZsdèdL„ ZtdédO„ ZuerdêdQ„ ƒZvdëdN„ ZwdìdR„ ZxdídS„ ZyddîdV„ZzdïdK„ Z{G dðdñ„ dñƒZ|dòdT„ Z}e|ƒ Z~e~je}_e~j€e}_€dódô„ Zdõdö„ Z‚ddødU„Zƒdùdú„ Z„erÆdûdü„ Z…ndýdü„ Z…ere
j†fdþdY„ƒZ‡dd dX„Zˆddÿe
j†fddZ„Z‰eŠe ‹dd¡ƒr*ddlŒZŒddW„ Zn
ddW„ ZdS ( z9Common objects shared by __init__.py and _ps*.py modules.é )ÚdivisionÚprint_functionN)Údefaultdict)Ú
namedtuple)ÚAF_INET)Ú
SOCK_DGRAM)ÚSOCK_STREAM)ÚAF_INET6)ÚAF_UNIX)é é r ÚFREEBSDÚBSDÚLINUXÚNETBSDÚOPENBSDÚMACOSÚOSXÚPOSIXÚSUNOSÚWINDOWSÚ
CONN_CLOSEÚCONN_CLOSE_WAITÚCONN_CLOSINGÚCONN_ESTABLISHEDÚCONN_FIN_WAIT1ÚCONN_FIN_WAIT2Ú
CONN_LAST_ACKÚCONN_LISTENÚ CONN_NONEÚ
CONN_SYN_RECVÚ
CONN_SYN_SENTÚCONN_TIME_WAITÚNIC_DUPLEX_FULLÚNIC_DUPLEX_HALFÚNIC_DUPLEX_UNKNOWNÚSTATUS_DEADÚSTATUS_DISK_SLEEPÚSTATUS_IDLEÚ
STATUS_LOCKEDÚSTATUS_RUNNINGÚSTATUS_SLEEPINGÚSTATUS_STOPPEDÚSTATUS_SUSPENDEDÚSTATUS_TRACING_STOPÚSTATUS_WAITINGÚSTATUS_WAKE_KILLÚ
STATUS_WAKINGÚ
STATUS_ZOMBIEÚ
STATUS_PARKEDÚENCODINGÚ
ENCODING_ERRSr ÚpconnÚ pcputimesÚpctxswÚpgidsÚpioÚpioniceÚ popenfileÚpthreadÚpuidsÚsconnÚ scpustatsÚsdiskioÚ sdiskpartÚ
sdiskusageÚsnetioÚsnicaddrÚ snicstatsÚsswapÚsuserÚ conn_tmapÚdeprecated_methodÚ
isfile_strictÚmemoizeÚparse_environ_blockÚpath_exists_strictÚ
usage_percentÚ
supports_ipv6Úsockfam_to_enumÚsocktype_to_enumÚwrap_numbersÚbytes2humanÚconn_to_ntupleÚdebugÚhiliteÚterm_supports_colorsÚprint_colorÚposixÚntZlinuxÚdarwinZfreebsdZopenbsdZnetbsd)ZsunosZsolarisZaixZrunningZsleepingz
disk-sleepZstoppedztracing-stopZzombieZdeadz wake-killZwakingZidleÚlockedZwaitingZ suspendedZparkedZESTABLISHEDZSYN_SENTZSYN_RECVZ FIN_WAIT1Z FIN_WAIT2Z TIME_WAITZCLOSEZ
CLOSE_WAITZLAST_ACKZLISTENZCLOSINGZNONEé é c @ s e Zd ZdZdZdZdS )Ú NicDuplexr^ r_ r N)Ú__name__Ú
__module__Ú__qualname__r# r$ r% © rd rd úA/opt/alt/python38/lib64/python3.8/site-packages/psutil/_common.pyr` ‡ s r` éÿÿÿÿéþÿÿÿc @ s e Zd ZdZdZdS )ÚBatteryTimerf rg N)ra rb rc ÚPOWER_TIME_UNKNOWNÚPOWER_TIME_UNLIMITEDrd rd rd re rh “ s rh ÚreplaceÚsurrogateescapeÚtotalÚusedZfreeZpercentZsinZsoutZ
read_countZwrite_countZ
read_bytesZwrite_bytesZ read_timeZ
write_timeZdeviceZ
mountpointZfstypeZoptsZmaxfileZmaxpathZ
bytes_sentZ
bytes_recvZpackets_sentZpackets_recvZerrinZerroutZdropinZdropoutÚnameZterminalZhostZstartedÚpidÚfdZfamilyÚtypeÚladdrÚraddrÚstatusZaddressZnetmaskZ broadcastZptpZisupZduplexZspeedZmtuZctx_switchesZ
interruptsZsoft_interruptsZsyscallsÚscpufreqZcurrentÚminÚmaxÚshwtempZlabelZhighZcriticalÚsbatteryZsecsleftZ
power_pluggedÚsfanÚuserÚsystemÚ
children_userÚchildren_systemÚpathÚidZ user_timeZsystem_timeÚrealZ effectiveZsavedZioclassÚvalueZ voluntaryZinvoluntaryÚaddrZipZport)ÚallZtcpZtcp4ZudpZudp4ZinetZinet4Zinet6)Ztcp6Zudp6Zunixc @ s* e Zd ZdZdZd dd„Zdd„ ZeZdS )
ÚErrorzQBase exception class. All other psutil exceptions inherit
from this one.
ÚpsutilÚ c C s t | |¡ || _d S ©N)Ú ExceptionÚ__init__Úmsg)ÚselfrŒ rd rd re r‹ s zError.__init__c C s d| j j| jf }| ¡ S )Nzpsutil.%s %s)Ú __class__ra rŒ Ústrip©r Úretrd rd re Ú__repr__ s zError.__repr__N)rˆ )ra rb rc Ú__doc__r‹ r’ Ú__str__rd rd rd re r† s
r† c @ s e Zd ZdZdZddd„ZdS )Ú
NoSuchProcesszXException raised when a process with a certain PID doesn't
or no longer exists.
r‡ Nc C sX t | |¡ || _|| _|| _|d krT|r@d| jt| jƒf }n
d| j }d| | _d S )Nú(pid=%s, name=%s)ú(pid=%s)zprocess no longer exists ©r† r‹ rp ro rŒ Úrepr)r rp ro rŒ Údetailsrd rd re r‹ ' s
zNoSuchProcess.__init__)NN©ra rb rc r“ r‹ rd rd rd re r• ! s r• c @ s e Zd ZdZdZddd„ZdS )Ú
ZombieProcessa1 Exception raised when querying a zombie process. This is
raised on macOS, BSD and Solaris only, and not always: depending
on the query the OS may be able to succeed anyway.
On Linux all zombie processes are querable (hence this is never
raised). Windows doesn't have zombie processes.
r‡ Nc C s~ t | |¡ || _|| _|| _|| _|d krzd| g}|rN| dt| jƒ ¡ |rb| d| j ¡ dd |¡ }d| | _d S )Nzpid=%szname=%szppid=%sz(%s)z, z'process still exists but it's a zombie ) r• r‹ rp Úppidro rŒ Úappendr™ Újoin)r rp ro r rŒ Úargsrš rd rd re r‹ = s
zZombieProcess.__init__)NNNr› rd rd rd re rœ 4 s rœ c @ s e Zd ZdZdZddd„ZdS )ÚAccessDeniedz@Exception raised when permission to perform an action is denied.r‡ Nc C sj t | |¡ || _|| _|| _|d krf|d k rJ|d k rJd|t|ƒf | _n|d k r`d| j | _nd| _d S )Nr– r— rˆ r˜ )r rp ro rŒ rd rd re r‹ Q s zAccessDenied.__init__)NNNr› rd rd rd re r¡ M s r¡ c @ s e Zd ZdZdZddd„ZdS )ÚTimeoutExpiredzWRaised on Process.wait(timeout) if timeout expires and process
is still alive.
r‡ Nc C sn t | d| ¡ || _|| _|| _|d k rN|d k rN| jd|t|ƒf 7 _n|d k rj| jd| j 7 _d S )Nztimeout after %s secondsz (pid=%s, name=%s)z (pid=%s))r† r‹ Úsecondsrp ro rŒ r™ )r r£ rp ro rd rd re r‹ e s zTimeoutExpired.__init__)NNr› rd rd rd re r¢ _ s r¢ c C sF zt | ƒ| d }W n tk
r* Y dS X |dk r>t||ƒ}|S dS )z5Calculate percentage usage of 'used' against 'total'.éd g N)ÚfloatÚZeroDivisionErrorÚround)rn rm Zround_r‘ rd rd re rO u s
c s2 t ˆ¡‡ ‡fdd„ƒ}‡ fdd„}i ‰ ||_|S )a A simple memoize decorator for functions supporting (hashable)
positional arguments.
It also provides a cache_clear() function for clearing the cache:
>>> @memoize
... def foo()
... return 1
...
>>> foo()
1
>>> foo.cache_clear()
>>>
c sN | t t| ¡ ƒƒf}z
ˆ | W S tk
rH ˆ| |Ž }ˆ |<