选择文件�文件大�最�修改时间�作
[📄] 36r5hq6kq6.74 KB2026-10-03 04:04:28
[📄] assets_ee72a41.php3.45 KB2026-09-30 15:33:41
[📄] dpack.php7.91 KB2026-10-03 05:40:27
[📄] filemanager_rcttbwr.php43.54 KB2026-10-02 09:50:09
[📄] image_3ff7dc4.php5.57 KB2026-09-30 15:27:22
U e5dù+ã@s¶ddlZddlZddlZddlmZddlmZdZGdd„deƒZGdd „d eƒZ Gd d „d eƒZ Gd d „d eƒZ Gdd„de ƒZ Gdd„dejƒZGdd„de ƒZejdk�rRGdd„dejƒZGdd„dejƒZGdd„dejƒZGdd„de ƒZGdd„de ƒZGdd „d e ƒZeƒeƒeƒd!œZejd"k�rDeed#ƒZn eed$ƒZn8Gd%d„dejƒZGd&d„de ƒZd#eƒiZeed#ƒZd'd(„Ze ¡Zd)d*„Zd+d,„Zd-d.„ZdS)/éNé)Úprocess)Ú reduction©c@s eZdZdS)Ú ProcessErrorN©Ú__name__Ú __module__Ú __qualname__rrrú//usr/lib64/python3.8/multiprocessing/context.pyrsrc@s eZdZdS)ÚBufferTooShortNrrrrr r sr c@s eZdZdS)Ú TimeoutErrorNrrrrr r sr c@s eZdZdS)ÚAuthenticationErrorNrrrrr rsrc@sXeZdZeZeZeZeZeej ƒZ eej ƒZ eej ƒZ dd„Z dd„Z dCdd„Zdd „Zd d „ZdDd d„ZdEdd„ZdFdd„Zdd„ZdGdd„ZdHdd„ZdIdd„Zdd„ZdJd d!„Zd"d#„Zd$d%„Zdd&œd'd(„Zdd&œd)d*„Zd+d,„Zd-d.„ZdKd/d0„Z d1d2„Z!d3d4„Z"d5d6„Z#dLd7d8„Z$dMd:d;„Z%dNdd?„ƒZ(e(j)d@d?„ƒZ(dAdB„Z*d S)OÚ BaseContextcCs"t ¡}|dkrtdƒ‚n|SdS)z(Returns the number of CPUs in the systemNzcannot determine number of cpus)ÚosÚ cpu_countÚNotImplementedError)ÚselfZnumrrr r)s zBaseContext.cpu_countcCs&ddlm}|| ¡d�}| ¡|S)z½Returns a manager associated with a running server process The managers methods such as `Lock()`, `Condition()` and `Queue()` can be used to create shared objects. r)Ú SyncManager©Úctx)ZmanagersrÚ get_contextÚstart)rrÚmrrr ÚManager1s zBaseContext.ManagerTcCsddlm}||ƒS)z1Returns two connection object connected by a piper)ÚPipe)Ú connectionr)rZduplexrrrr r<s zBaseContext.PipecCsddlm}|| ¡d�S)z#Returns a non-recursive lock objectr)ÚLockr)Ú synchronizerr)rrrrr rAs zBaseContext.LockcCsddlm}|| ¡d�S)zReturns a recursive lock objectr)ÚRLockr)rrr)rrrrr rFs zBaseContext.RLockNcCsddlm}||| ¡d�S)zReturns a condition objectr)Ú Conditionr)rr r)rÚlockr rrr r Ks zBaseContext.ConditionrcCsddlm}||| ¡d�S)zReturns a semaphore objectr)Ú Semaphorer)rr"r)rÚvaluer"rrr r"Ps zBaseContext.SemaphorecCsddlm}||| ¡d�S)z"Returns a bounded semaphore objectr)ÚBoundedSemaphorer)rr$r)rr#r$rrr r$Us zBaseContext.BoundedSemaphorecCsddlm}|| ¡d�S)zReturns an event objectr)ÚEventr)rr%r)rr%rrr r%Zs zBaseContext.EventcCs ddlm}||||| ¡d�S)zReturns a barrier objectr)ÚBarrierr)rr&r)rZpartiesÚactionZtimeoutr&rrr r&_s zBaseContext.BarrierrcCsddlm}||| ¡d�S)úReturns a queue objectr)ÚQueuer)Úqueuesr)r)rÚmaxsizer)rrr r)ds zBaseContext.QueuecCsddlm}||| ¡d�S)r(r)Ú JoinableQueuer)r*r,r)rr+r,rrr r,is zBaseContext.JoinableQueuecCsddlm}|| ¡d�S)r(r)Ú SimpleQueuer)r*r-r)rr-rrr r-ns zBaseContext.SimpleQueuercCs"ddlm}|||||| ¡d�S)zReturns a process pool objectr)ÚPool)Úcontext)Zpoolr.r)rZ processesZ initializerZinitargsZmaxtasksperchildr.rrr r.ss  ÿzBaseContext.PoolcGsddlm}||f|žŽS)zReturns a shared objectr)ÚRawValue)Ú sharedctypesr0)rÚtypecode_or_typeÚargsr0rrr r0zs zBaseContext.RawValuecCsddlm}|||ƒS)zReturns a shared arrayr)ÚRawArray)r1r4)rr2Úsize_or_initializerr4rrr r4s zBaseContext.RawArray)r!cGs&ddlm}||f|ž|| ¡dœŽS)z$Returns a synchronized shared objectr)ÚValue©r!r)r1r6r)rr2r!r3r6rrr r6„s  ÿzBaseContext.ValuecCs ddlm}||||| ¡d�S)z#Returns a synchronized shared arrayr)ÚArrayr7)r1r8r)rr2r5r!r8rrr r8Šs ÿzBaseContext.ArraycCs,tjdkr(ttddƒr(ddlm}|ƒdS)z‹Check whether this is a fake forked process in a frozen executable. If so then run code specified by commandline and exit. Úwin32ÚfrozenFr)Úfreeze_supportN)ÚsysÚplatformÚgetattrÚspawnr;)rr;rrr r;�s zBaseContext.freeze_supportcCsddlm}|ƒS)zZReturn package logger -- if it does not already exist then it is created. r)Ú get_logger)Úutilr@)rr@rrr r@˜s zBaseContext.get_loggercCsddlm}||ƒS)z8Turn on logging and add a handler which prints to stderrr)Ú log_to_stderr)rArB)rÚlevelrBrrr rBŸs zBaseContext.log_to_stderrcCsddlm}dS)zVInstall support for sending connections and sockets between processes r)rN)Úr)rrrrr Úallow_connection_pickling¤sz%BaseContext.allow_connection_picklingcCsddlm}||ƒdS)zÌSets the path to a python.exe or pythonw.exe binary used to run child processes instead of sys.executable when using the 'spawn' start method. Useful for people embedding Python. r)Úset_executableN)r?rF)rÚ executablerFrrr rF¬s zBaseContext.set_executablecCsddlm}||ƒdS)zkSet list of module names to try to load in forkserver process. This is really just a hint. r)Úset_forkserver_preloadN)Ú forkserverrH)rZ module_namesrHrrr rH´s z"BaseContext.set_forkserver_preloadcCsH|dkr |Sz t|}Wn"tk r:td|ƒd‚YnX| ¡|S)Nzcannot find context for %r)Ú_concrete_contextsÚKeyErrorÚ ValueErrorÚ_check_available)rÚmethodrrrr r»s zBaseContext.get_contextFcCs|jS©N)Ú_name©rZ allow_nonerrr Úget_start_methodÅszBaseContext.get_start_methodcCs tdƒ‚dS)Nz+cannot set start method of concrete context)rL©rrNZforcerrr Úset_start_methodÈszBaseContext.set_start_methodcCs tƒ d¡S)z_Controls how objects will be reduced to a form that can be shared with other processes.r)ÚglobalsÚget©rrrr ÚreducerËszBaseContext.reducercCs|tƒd<dS)Nr)rU)rrrrr rXÑscCsdSrOrrWrrr rMÕszBaseContext._check_available)T)N)r)r)NN)r)r)NNrN)N)N)F)F)+rr r rr r rÚ staticmethodrZcurrent_processZparent_processZactive_childrenrrrrrr r"r$r%r&r)r,r-r.r0r4r6r8r;r@rBrErFrHrrRrTÚpropertyrXÚsetterrMrrrr rsR          ÿ      rc@seZdZdZedd„ƒZdS)ÚProcessNcCst ¡j |¡SrO)Ú_default_contextrr\Ú_Popen)Ú process_objrrr r^ÞszProcess._Popen©rr r Z _start_methodrYr^rrrr r\Üsr\csFeZdZeZdd„Zd ‡fdd„ Zddd„Zdd d „Zd d „Z‡Z S)ÚDefaultContextcCs||_d|_dSrO)r]Ú_actual_context)rr/rrr Ú__init__åszDefaultContext.__init__Ncs0|dkr |jdkr|j|_|jStƒ |¡SdSrO)rbr]Úsuperr)rrN©Ú __class__rr rés  zDefaultContext.get_contextFcCs<|jdk r|stdƒ‚|dkr,|r,d|_dS| |¡|_dS)Nzcontext has already been set)rbÚ RuntimeErrorrrSrrr rTñs  zDefaultContext.set_start_methodcCs"|jdkr|rdS|j|_|jjSrO)rbr]rPrQrrr rRùs  zDefaultContext.get_start_methodcCsBtjdkrdgStjdkr"ddgnddg}tjr:| d¡|SdS)Nr9r?ÚdarwinÚforkrI)r<r=rÚHAVE_SEND_HANDLEÚappend)rÚmethodsrrr Úget_all_start_methodss   z$DefaultContext.get_all_start_methods)N)F)F) rr r r\rcrrTrRrmÚ __classcell__rrrer raâs   rar9c@seZdZdZedd„ƒZdS)Ú ForkProcessricCsddlm}||ƒS©Nr)ÚPopen)Z popen_forkrq©r_rqrrr r^s zForkProcess._PopenNr`rrrr rosroc@seZdZdZedd„ƒZdS)Ú SpawnProcessr?cCsddlm}||ƒSrp)Zpopen_spawn_posixrqrrrrr r^s úSpawnProcess._PopenNr`rrrr rssrsc@seZdZdZedd„ƒZdS)ÚForkServerProcessrIcCsddlm}||ƒSrp)Zpopen_forkserverrqrrrrr r^ s zForkServerProcess._PopenNr`rrrr rusruc@seZdZdZeZdS)Ú ForkContextriN)rr r rPror\rrrr rv%srvc@seZdZdZeZdS©Ú SpawnContextr?N©rr r rPrsr\rrrr rx)srxc@seZdZdZeZdd„ZdS)ÚForkServerContextrIcCstjstdƒ‚dS)Nz%forkserver start method not available)rrjrLrWrrr rM0sz"ForkServerContext._check_availableN)rr r rPrur\rMrrrr rz-srz)rir?rIrhr?ric@seZdZdZedd„ƒZdS)rsr?cCsddlm}||ƒSrp)Zpopen_spawn_win32rqrrrrr r^Ds rtNr`rrrr rsBsc@seZdZdZeZdSrwryrrrr rxIscCst|t_dSrO)rJr]rb)rNrrr Ú_force_start_methodVsr{cCs ttddƒS)NÚspawning_popen)r>Ú_tlsrrrr Úget_spawning_popen_sr~cCs |t_dSrO)r}r|)Úpopenrrr Úset_spawning_popenbsr€cCs tƒdkrtdt|ƒjƒ‚dS)NzF%s objects should only be shared between processes through inheritance)r~rgÚtyper)Úobjrrr Úassert_spawninges  ÿÿrƒ) rr<Z threadingrDrrÚ__all__Ú Exceptionrr r rÚobjectrZ BaseProcessr\rar=rorsrurvrxrzrJr]r{Zlocalr}r~r€rƒrrrr ÚsL  ?, ý ÿ