fDtgdZddlZddlZddlZddlZddlZddlZddlZddlZddlm Z ddl m Z ddl m Z ddlmZmZmZddl mZdd l mZdd l mZdd l mZ dd l mZd Zedn #e$rdZYnwxYwdZejejeddDZdZeD]Zejee[[GddeZ difdZ!dZ"Gdde#Z$dZ%dZ&GddeZ'Gdd eZ(e j)e j*fe j+e j,fd!Z-Gd"d#eZ.Gd$d%e/Z0Gd&d'eZ1d(Z2ifd)Z3 dcd*Z4Gd+d,eZ5Gd-d.eZ6ddd/Z7Gd0d1e1Z8Gd2d3e1Z9Gd4d5e9Z:Gd6d7e1Z;Gd8d9e1Z<Gd:d;e1Z=Gd<d=e1Z>e3d>d?Z?Gd@dAe?Z@e3dBdCZAdDdEieA_Be3dFdGZCe3dHdIZDdJdJdJdEdEdKeD_BGdLdHeDZEGdMdNe.ZFeFdOejGeFdPejGeFdQejHe;eFdRejIe9eFdSejJe9eFdTejKe9eFdUejLe9eFdVejMe:eFdWejNe<eFdXejOeEeFdYePe@eFdZeQeAeFd.e6e>eFd[e7eCeFd,e5e=eFdEe8d\eFdJd]er+Gd^d_ZRGd`dae'ZSGdbde.ZTdSdS)e) BaseManager SyncManager BaseProxyTokenN)getpid) format_exc) connection) reductionget_spawning_popen ProcessError)pool)process)util) get_context) shared_memoryTSharedMemoryManagerFcPtj|j|ffSN)arraytypecodetobytes)as ?/opt/alt/python311/lib64/python3.11/multiprocessing/managers.py reduce_arrayr/s ;QYY[[1 11c Xg|]'}tti|(S)typegetattr.0names r r$3s3 N N NDd$72t$$&&'' N N Nr)itemskeysvaluesc0tt|ffSr)listobjs rrebuild_as_listr,4s $s)) rc,eZdZ dZdZdZdZdZdS)rtypeidaddressidc2|||c|_|_|_dSrr.)selfr/r0r1s r__init__zToken.__init__Ds06,dlDGGGrc*|j|j|jfSrr.r3s r __getstate__zToken.__getstate__Gs T\4733rc0|\|_|_|_dSrr.r3states r __setstate__zToken.__setstate__Js/4,dlDGGGrcP|jjd|jd|jd|jdS)Nz(typeid=z , address=z, id=)) __class____name__r/r0r1r6s r__repr__zToken.__repr__Ms4'''dlllDGGGM MrN)r? __module__ __qualname__ __slots__r4r7r;r@rrrrr>sd,IEEE444555MMMMMrrrc |||||f|\}}|dkr|St||)N#RETURN)sendrecvconvert_to_error)cr1 methodnameargskwdskindresults rdispatchrOUsUFFB D$ '(((6688LD& y 4 ( ((rc 8|dkr|S|dvrmt|ts1td||t ||dkrt d|zSt |St d|S)N#ERROR) #TRACEBACK#UNSERIALIZABLEz.Result {0!r} (kind '{1}') type is {2}, not strrSzUnserializable message: %s zUnrecognized message type {!r}) isinstancestr TypeErrorformatr RemoteError ValueError)rMrNs rrHrH_s x 2 2 2&#&& 1@GGD$v,,0011 1 $ $ $=FGG Gv&& &:AA$GGHHHrceZdZdZdS)rXcBdt|jdzdzS)NzM --------------------------------------------------------------------------- rzK---------------------------------------------------------------------------)rUrKr6s r__str__zRemoteError.__str__os $s49Q<'8'886ABrN)r?rArBr\rrrrXrXns(CCCCCrrXc g}t|D]6}t||}t|r||7|Sr)dirr callableappend)r+tempr#funcs r all_methodsrcvsX DCsD!! D>>  KK    Krc6 dt|DS)Nc*g|]}|ddk|S)r_rr!s rr$z"public_methods..s! @ @ @TaCDr)rcr*s rpublic_methodsrgs& A @[-- @ @ @@rceZdZ gdZdZdZdZdZdZdZ dZ d Z d Z e e e d Z d Zd ZdZdZdZdZdZdZdZdS)Server) shutdowncreateaccept_connection get_methods debug_infonumber_of_objectsdummyincrefdecrefct|ts0td|t |||_t j||_t|\}}||d|_ |j j |_ ddi|_ i|_ i|_tj|_dS)Nz&Authkey {0!r} is type {1!s}, not bytes)r0backlog0Nr)rTbytesrVrWrregistryrAuthenticationStringauthkeylistener_clientlistenerr0 id_to_objid_to_refcountid_to_local_proxy_obj threadingLockmutex)r3ryr0r{ serializerListenerClients rr4zServer.__init__s'5)) -8??T']],,-- -! 3G<< *:6&!#>>> }, z* %'"^%% rc` tj|_|tj_ tj|j}d|_|  |j s3|j d|j 3n#ttf$rYnwxYwtjtjkr@t#jdtjt_tjt_tjddS#tjtjkr@t#jdtjt_tjt_tjdwxYw)N)targetTr zresetting stdout, stderrr)rEvent stop_eventrcurrent_process_manager_serverThreadaccepterdaemonstartis_setwaitKeyboardInterrupt SystemExitsysstdout __stdout__rdebug __stderr__stderrexit)r3rs r serve_foreverzServer.serve_foreversU $/++48!!1  't}===H"HO NN    /0022,O((+++/0022,%z2    zS^++ 5666 ^  ^ HQKKKKK zS^++ 5666 ^  ^ HQKKKKs15D=)A B65D=6C D= C  D==A0F-c |j}n#t$rY(wxYwtj|j|f}d|_|c)NTrrK)r}acceptOSErrorrrhandle_requestrr)r3rIts rrzServer.accepterst  M((**     (;1$GGGAAH GGIII s  **cd} tj||jtj||j|}|\}}}}t ||} ||g|Ri|}d|f} n@#t $rdtf} Yn$wxYw#t $rdtf} YnwxYw || dS#t $r} |dtfn#t $rYnwxYwtj d| tj d|tj d| Yd} ~ dSd} ~ wwxYw)NrErRzFailure to send message: %rz ... request was %r ... exception was %r) r deliver_challenger{answer_challengerGr ExceptionrrFrinfo) r3rIrequestignorefuncnamerKrLrbrNmsges r_handle_requestzServer._handle_requests *  (DL 9 9 9  '4< 8 8 8ffhhG+2 (FHdD4**D *a/$///$//!&) 3 3 3#Z\\2 3  / / /.CCC / 2 FF3KKKKK 2 2 2  jll34444     I3S 9 9 9 I+W 5 5 5 I-q 1 1 1 1 1 1 1 1 1 2s[AB$ A55BBB21B26C E#C<;E< D ED  AEEc ||n#t$rYnwxYw|dS#|wxYwr)rrcloser3conns rrzServer.handle_requestsh     & & & &    D  JJLLLLLDJJLLLLs? &?&?AcD tjdtjj|j}|j}|j}|j s dx}}|}|\}}} } ||\}} } n:#t$r-} |j |\}} } n#t$r| wxYwYd} ~ nd} ~ wwxYw|| vr%td|dt|d| t||} || i| }| o| |d}|r7||||\}}t#||j|}d||ff}n d|f}n#t&$r}d|f}Yd}~nd}~wwxYwn#t$rX|dt)f}nB |j|}|||||g| Ri| }d|f}n #t&$rdt)f}YnwxYwYnit,$rBtjd tjjt/jd Ynt&$rdt)f}YnwxYw ||n)#t&$r|d t)fYnwxYwn#t&$r}tjd tjjtjd |tjd||t/jdYd}~nd}~wwxYw|j dSdS)Nz$starting server thread to service %rzmethod z of z object is not in exposed=#PROXYrErQrRz$got EOF -- exiting thread serving %rrrSzexception in thread serving %rz ... message was %rrr )rrrcurrent_threadr#rGrFr~rrKeyErrorrAttributeErrorrr getrkrr0rrfallback_mappingEOFErrorrrrr)r3rrGrFr~rJr+ridentrKrLexposed gettypeidkefunctionresr/ridentrexposedtokenrr fallback_funcrNs r serve_clientzServer.serve_clientsI  9+--2 4 4 4yyN /((**D 5 3#'' S$&&07-z4!.7.>+C))!!!! 6u=0Wii#!!! !'0iiii!W,,(.#T#YYYY9 #3 33 /"(D1D11C'J9==T+J+JF/+/;;tVS+I+I( %fdlF C C'(E):;(#.!(((#Q-CCCCCC(" ; ; ;%'6CC;(,(=j(I !. $s"59"""=A"" )&1$;;;+Z\\:;    A$355:<<<  3 3 3#Z\\2 3 <DIIII <<<D+Z\\:;;;;;<    :!0227999 /555 11555   }/((**D D D D D sE.3 B?E. B7 BB2 B**B2-E.2B77B;1 DD D N)r?rArBpublicr4rrrrrrrrrrprnrorjrkrmrlrqrrrrrririsXNNNF&&&$,222<   OOOb %      %%% ((( " " ""%"%"%H222 $*****rric eZdZdgZdZdZdZdS)Statevaluerr N)r?rArBrCINITIALSTARTEDSHUTDOWNrrrrrs$ IGGHHHrr)pickle xmlrpclibceZdZ iZeZ ddddZdZdZdd Z e dd Z d Z dd Z d ZdZdZdZedZedZe ddZdS)rNrg?)shutdown_timeoutcF|tjj}||_tj||_t |_t j|j_ ||_ t|\|_ |_ |p t|_||_dSr)rrr{_addressrz_authkeyr_staterr _serializerr| _Listener_Clientr_ctx_shutdown_timeout)r3r0r{rctxrs rr4zBaseManager.__init__s ?-//7G 4W== gg !M %'6z'B$ (;== !1rc |jjtjkr~|jjtjkrt d|jjtjkrt dt d|jjt|j |j |j |j S)NAlready started serverManager has shut downUnknown state {!r}) rrrrrr rrWri _registryrrrr6s r get_serverzBaseManager.get_servers  ;  - -{ EM11"#;<<<"en44"#:;;;"(// 0ABBDDDdndmmT%577 7rc t|j\}}||j|j}t |ddt j|j_dS)Nr{rp) r|rrrrOrrrr)r3rrrs rconnectzBaseManager.connectsW +4+;<&vdmT];;;tW%%%!M rrc d |jjtjkr~|jjtjkrt d|jjtjkrt dt d|jj|t|stdtj d\}}|j t|j|j|j|j|j|||f|_dd |jjD}t|jd z|z|j_|j|||_|tj|j_t9j|t|j|j|j|j|j|j|j fd |_!dS) Nrrrzinitializer must be a callableF)duplexr:c34K|]}t|VdSrr)r"is r z$BaseManager.start..1s(AAAQAAAAAAr-rrK exitpriority)"rrrrrr rrWr_rVr PiperProcessr _run_serverrrrr_processr _identityr?r#rrrGrFinalize_finalize_managerrrrj)r3 initializerinitargsreaderwriterrs rrzBaseManager.starts  ;  - -{ EM11"#;<<<"en44"#:;;;"(// 0ABBDDD  "8K+@+@ "<== =$666 ))::).$-"FKC* AA)@AAAAA!$ZZ0C7%?       "M  $t**.- t{, 68  rcP tjtjtj||||||||}||j|tjd|j| dS)Nzmanager serving at %r) signalSIGINTSIG_IGN_ServerrFr0rrrr) clsryr0r{rrrrservers rrzBaseManager._run_serverCs   fmV^444  " K " "XwDD  FN###  )6>:::rc ||j|j} t|dd|f|z|\}}|n#|wxYwt ||j||fS)Nrrk)rrrrOrr)r3r/rKrLrr1rs r_createzBaseManager._createZs ||DM4=|AA "4x&4NNKB JJLLLLDJJLLLLVT]B//88s AA)c |j<|j||js d|_dSdSdSr)rris_aliver3timeouts rrzBaseManager.joinfsZ  = $ M  w ' ' '=))++ % $  % $ % %rc ||j|j} t|dd|S#|wxYw)NrrnrrrrOrrs r _debug_infozBaseManager._debug_infoosW ||DM4=|AA D$ 55 JJLLLLDJJLLLL A Ac ||j|j} t|dd|S#|wxYw)Nrror)rs r_number_of_objectszBaseManager._number_of_objectsysX ||DM4=|AA D$(;<< JJLLLLDJJLLLLr+c|jjtjkr||jjtjkr~|jjtjkrt d|jjtjkrt dt d|jj|S)NzUnable to start serverrr) rrrrrrr rrWr6s r __enter__zBaseManager.__enter__s ;  - - JJLLL ;  - -{ EM11"#;<<<"en44"#:;;;"(// 0ABBDDD rc.|dSr)rjr3exc_typeexc_valexc_tbs r__exit__zBaseManager.__exit__s rc |jr,tjd |||} t|dd|n#|wxYwn#t $rYnwxYw|j||jrtjdt|drutjd|j|j||jr2tjd|j |jtj |_ tj|=dS#t$rYdSwxYw) Nz#sending shutdown message to managerrrj)r'zmanager still alive terminatez'trying to `terminate()` manager processz#manager still alive after terminate)r%rrrOrrrhasattrr7killrrrr_address_to_localr)rr0r{r:rrrs rrzBaseManager._finalize_managers  7    ' I; < < < ww888!T4444JJLLLLDJJLLLLL     GL!1 2 2 2 2w!! ' /0007K00'IGHHH%G%''' GL)9::::'w'))' "GHHH$ $ n  +G444    DD s: A5AA5A11A55 BB E E-,E-c|jSr)rr6s rr0zBaseManager.addresss }rTcj d|jvr|j|_t|pt dd}|pt dd}|r't |D]\}}|||f|j<|r fd} | _t|| dSdS)Nr _exposed__method_to_typeid_ctjd|jg|Ri|\}}||j||j|}||j|j}t|dd|jf|S)Nz)requesting creation of a shared %r objectmanagerr{rrrr) rrr#rrrr0rOr1) r3rKrLrexpproxyrrr/s rraz"BaseManager.register..temps FOOO)T\&@4@@@4@@ s! 4+T M3||EM4=|IItX{;;; r) __dict__rcopy AutoProxyr r)r%r?setattr) r r/r_rrr create_methodkeyrras ` ` rregisterzBaseManager.registers  cl * *M..00CM  !IBWY TBB+J"9.BDII   H"#3#9#9#;#;<< H H UU g/! f  '      #DM C & & & & & ' 'r)NNrNrwr)NNNNT)r?rArBrrirr4rrr classmethodrr#rr*r-r/r5 staticmethodrpropertyr0rJrrrrrs^IG>F 2/2 2 2 2 2 2 7 7 7***))))V/1[, 9 9 9%%%%     \ DXEI6:%'%'%'[%'%'%'rrceZdZdZdZdS)ProcessLocalSetc2tj|ddS)Nc*|Sr)clearr*s rz*ProcessLocalSet.__init__..s399;;r)rregister_after_forkr6s rr4zProcessLocalSet.__init__s  '>'>?????rc$t|dfSrw)rr6s r __reduce__zProcessLocalSet.__reduce__sDzz2~rN)r?rArBr4rVrrrrOrOs5@@@rrOceZdZ iZejZ ddZdZdifdZ dZ d Z e d Z d Zd Zd ZdZdZdS)rNTFctj5tj|jd}|5t jtf}|tj|j<dddn #1swxYwY|d|_|d|_ ||_ |j j |_ ||_ ||_t|d|_||_|t%j||_n6|j |j j|_nt%jj|_|r|t j|tjdS)Nrr )r_mutexr:rr0rForkAwareLocalrO_tls_idset_tokenr1_id_managerrr|r_owned_by_managerrrzrrr{_increfrT _after_fork) r3rrrAr{rrq manager_owned tls_idsets rr4zBaseProxy.__init__s   G G!377 tLLI  /11?3D3DD =F +EM:  G G G G G G G G G G G G G G GaL  l  ;> %&z215 "/  #8AADMM ] & M2DMM#355=DM   LLNNN  y'<=====sAA66A:=A:c\tjdtjj}t jjdkr|dt jjzz }||jj |j }t|dd|f||j _ dS)Nzmaking connection to manager MainThread|rrl)rrrrr#rrrr]r0rrOr[r )r3r#rs r_connectzBaseProxy._connect s 1222&((-  # % % *l : : C)24499 9D||DK/|GGt04':::# rrc |jj}n[#t$rNtjdt jj||jj}YnwxYw| |j |||f| \}}|dkr|S|dkr|\}}|j j |jd} |jj|_| ||j|j |j|} ||j|j}t)|dd|jf| St-||)Nz#thread %r does not own a connectionrErr@rrr)r[r rrrrrr#rhrFr^rGr_rr/r]r0rrrrOr1rH) r3rJrKrLrrMrNrrrrCs r _callmethodzBaseProxy._callmethod)s[  (9'DD ( ( ( J< /116 8 8 8 MMOOO9'DDD  ( 48Zt4555yy{{ f 9  M X  #NGU / =bAI K/EMIt' wE<< t}<EED T4EH; 7 7 7LtV,,,s AA('A(c. |dS)Nrrkr6s r _getvaluezBaseProxy._getvalueGs  ,,,rc |jr!tjd|jjdS||jj|j}t|dd|j ftjd|jj|j |j |j o |j j }tj|tj|j|j||j|j |jfd|_dS)Nz%owned_by_manager skipped INCREF of %rrrqz INCREF %r r)r`rrr]r1rr0rrOr^r\addr_rrr_decrefr[_close)r3rr:s rrazBaseProxy._increfMs  !  J>  O O O F||DK/|GGtX{333 ; /// !!! 6$-"6m )#+t}e)T[$,8  rc8||j||jtjkrr t jd|j||j|}t|dd|jfnF#t$r}t jd|Yd}~n"d}~wwxYwt jd|j|sXt|drJt jdtj j |j|`dSdSdS)Nz DECREF %rrrrz... decref failed %sz%DECREF %r -- manager already shutdownr z-thread %r has no more proxies so closing conn)discardr1rrrrrr0rOrr8rrr#r r)rr{r:tlsidsetrrrs rrrzBaseProxy._decrefas? eh =EK5=88 6 ;111wu}g>>>tX{;;;; 6 6 6 1155555555 6 J> I I I l33  JF /116 8 8 8 N " " "     sAA88 B!BB!cd|_ |dS#t$r"}tjd|zYd}~dSd}~wwxYw)Nzincref failed: %s)r_rarrr)r3rs rrbzBaseProxy._after_forkzsf  / LLNNNNN / / / I)A- . . . . . . . . . /s A AA ci}t |j|d<t|ddr&|j|d<tt |j|j|ffStt||j|j|ffS)Nr{_isautoFr) r rr r= RebuildProxyrFr]rrr3rLs rrVzBaseProxy.__reduce__s    +"mDO 4E * * G"nDO  T-=tDF F!$ZZd.>EG Grc*|Sr)rn)r3memos r __deepcopy__zBaseProxy.__deepcopy__s~~rcddt|j|jjt |fzS)Nz<%s object, typeid %r at %#x>)rr?r]r/r1r6s rr@zBaseProxy.__repr__s/.T #T[%7DBC Crc |dS#t$rt|dddzcYSwxYw)Nr@rjz; '__str__()' failed>)rkrrr6s rr\zBaseProxy.__str__s[  =##J// / = = =::crc?%<< < < < =s $??NNNTF)r?rArBr:rForkAwareThreadLockrYr4rhrkrnrarLrrrbrVrr@r\rrrrrs %T % ' 'F26HM'>'>'>'>R$$$,.B----<--- (\0/// G G G   CCC=====rrc ttjdd}|rW|j|jkrGt jd|d|d<|j|jvr|j|j|j|j<| ddo"ttjdd }|||fd|i|S)Nrz*Rebuild a proxy owned by manager, token=%rTrcrq _inheritingF) r rrr0rrr1rr~pop)rbrrrLr!rqs rr{r{sW,..0A4 H HF +&.EM11 ?GGG $_ 867 7 7 *  ( 2 4   E G+--}e D DD  4z 9 9& 9D 9 99rc t|} |||fS#t$rYnwxYwi}|D]}td|d|d|t|tf|}||_||||f<|S)Nzdef z:(self, /, *args, **kwds): return self._callmethod(z , args, kwds))rrexecrrr=)r#r_cachedicmeth ProxyTypes r MakeProxyTypersGnnG tWo&&       CHH 6:ddDDDBCF H H H HTI<--I!I'FD'? s  ))c t|d}|T||j|} t|dd|f}|n#|wxYw| ||j}|t jj}td|j z|} | ||||||} d| _ | S)Nr rrmz AutoProxy[%s])rAr{rqrcT) r|r0rOrrrrr{rr/rz) rrrAr{rrqrcrrrrCs rrFrFsj)!,Gwu}g666 tT=5(CCG JJLLLLDJJLLLL7.")++3o r?r)r3r%rar#rs rr@zNamespace.__repr__sT]((**++  5 5KD%??3'' 5 tttUU3444 >222DIIdOOOODDrN)r?rArBr4r@rrrrrs7###EEEEErrc@eZdZddZdZdZdZeeeZdS)ValueTc"||_||_dSr) _typecode_value)r3rrlocks rr4zValue.__init__s! rc|jSrrr6s rrz Value.gets {rc||_dSrrr3rs rrz Value.sets  rcPt|jd|jd|jdS)Nrrr=)rr?rrr6s rr@zValue.__repr__s*!$ZZ000$...$+++NNrNT) r?rArBr4rrr@rMrrrrrrscOOO HS#  EEErrc,tj||Sr)r)rsequencers rArrayrs ;x * **rc0eZdZdZdZdZdZdZdZdS) IteratorProxy)__next__rFthrowrc|Srrr6s r__iter__zIteratorProxy.__iter__  rc.|d|S)Nrrmr3rKs rrzIteratorProxy.__next__s D111rc.|d|S)NrFrmrs rrFzIteratorProxy.sends---rc.|d|S)Nrrmrs rrzIteratorProxy.throw...rc.|d|S)Nrrmrs rrzIteratorProxy.closerrN) r?rArBr=rrrFrrrrrrr sd6I222...////////rrc,eZdZdZddZdZdZdZdS) AcquirerProxy)acquirereleaseTNc@||fn||f}|d|SNrrm)r3blockingr'rKs rrzAcquirerProxy.acquires,%o{{Hg3F 4000rc,|dSNrrmr6s rrzAcquirerProxy.release ***rc,|dSrrmr6s rr/zAcquirerProxy.__enter__rrc,|dSrrmr1s rr5zAcquirerProxy.__exit__!rr)TN)r?rArBr=rrr/r5rrrrrsZ&I1111+++++++++++rrc0eZdZdZddZd dZdZddZdS) ConditionProxy)rrrnotify notify_allNc0|d|fSNrrmr&s rrzConditionProxy.wait' 333rr c0|d|fS)Nrrm)r3ns rrzConditionProxy.notify)s1$///rc,|dS)Nrrmr6s rrzConditionProxy.notify_all+s ---rc|}|r|S|tj|z}nd}d}|s@||tjz }|dkrn!|||}|@|S)Nr)time monotonicr)r3 predicater'rNendtimewaittimes rwait_forzConditionProxy.wait_for-s  M  n&&0GGGH !""T^%5%55q== IIh   Y[[F  ! rr)r )r?rArBr=rrrrrrrrr%sdFI44440000...rrc,eZdZdZdZdZdZddZdS) EventProxy)rrrRrc,|dS)Nrrmr6s rrzEventProxy.is_setBs)))rc,|dSNrrmr6s rrzEventProxy.setD&&&rc,|dS)NrRrmr6s rrRzEventProxy.clearF(((rNc0|d|fSrrmr&s rrzEventProxy.waitHrrr)r?rArBr=rrrRrrrrrr@sZ2I***''')))444444rrcheZdZdZd dZdZdZedZedZ edZ dS) BarrierProxy)__getattribute__rabortresetNc0|d|fSrrmr&s rrzBarrierProxy.waitNrrc,|dS)Nrrmr6s rrzBarrierProxy.abortPrrc,|dS)Nrrmr6s rrzBarrierProxy.resetRrrc.|ddS)Nr)partiesrmr6s rrzBarrierProxy.partiesTs 2LAAArc.|ddS)Nr) n_waitingrmr6s rrzBarrierProxy.n_waitingWs 2NCCCrc.|ddS)Nr)brokenrmr6s rrzBarrierProxy.brokenZs 2K@@@rr) r?rArBr=rrrrMrrrrrrrrLs>I4444)))))) BBXB DDXD AAXAAArrc$eZdZdZdZdZdZdS)NamespaceProxy)r __setattr__ __delattr__c|ddkrt||St|d}|d|fS)Nrrfrkr)objectrr3rI callmethods r __getattr__zNamespaceProxy.__getattr__asO q6S==**455 5,,T=AA z,sf555rc|ddkrt|||St|d}|d||fS)Nrrfrkr)rrr)r3rIrrs rrzNamespaceProxy.__setattr__fsR q6S==%%dC77 7,,T=AA z-#u666rc|ddkrt||St|d}|d|fS)Nrrfrkr)rrrrs rrzNamespaceProxy.__delattr__ksN q6S==%%dC00 0,,T=AA z-#000rN)r?rArBr=rrrrrrrr_sFBI666 777 11111rrcVeZdZdZdZdZeeeZee j Z dS) ValueProxy)rrc,|dS)Nrrmr6s rrzValueProxy.gettrrc0|d|fSrrmrs rrzValueProxy.setvsx000rN) r?rArBr=rrrMrrKtypes GenericAlias__class_getitem__rrrrrrsWI'''111 HS#  E# E$677rr BaseListProxy)__add__ __contains__ __delitem__ __getitem____len____mul__ __reversed____rmul__ __setitem__r`countextendindexinsertrremovereverser__imul__ceZdZdZdZdS) ListProxyc4|d|f|S)Nrrmrs r__iadd__zListProxy.__iadd__s E8,,, rc4|d|f|S)Nr rmrs rr zListProxy.__imul__s eX... rN)r?rArBrr rrrr r s2rr  DictProxy)rrrrrrrRrErr%r&rpopitem setdefaultrr'rIterator ArrayProxy)rrr PoolProxy) apply apply_asyncrimapimap_unorderedrmap map_asyncstarmap starmap_asyncr7 AsyncResult)rrrrrceZdZdZdZdS)rc|Srrr6s rr/zPoolProxy.__enter__rrc.|dSr)r7r1s rr5zPoolProxy.__exit__s rN)r?rArBr/r5rrrrrs2rceZdZdS)rN)r?rArBrrrrrsrrQueue JoinableQueuerrRLock SemaphoreBoundedSemaphore ConditionBarrierPoolr)rr)rrH)rHc>eZdZ gfdZdZdZdZdZdZdZ dS) _SharedMemoryTrackerc"||_||_dSrshared_memory_context_name segment_names)r3r#r0s rr4z_SharedMemoryTracker.__init__s.2D +!.D   rc tjd|dt|j|dS)NzRegister segment  in pid )rrrr0r`r3 segment_names rregister_segmentz%_SharedMemoryTracker.register_segmentsG D JM<MM688MM N N N   % %l 3 3 3 3 3rc tjd|dt|j|t j|}||dS)NzDestroy segment r2) rrrr0rr SharedMemoryrunlink)r3r4segments rdestroy_segmentz$_SharedMemoryTracker.destroy_segmentsw E JL,LL&((LL M M M   % %l 3 3 3#0>>G MMOOO NN     rcV |jddD]}||dSr)r0r:r3s rr8z_SharedMemoryTracker.unlinksA J $ 2111 5 3 3 $$\2222 3 3rctjd|jjdt |dS)NzCall z .__del__ in )rrr>r?rr8r6s r__del__z_SharedMemoryTracker.__del__s= JNt~6NNFHHNN O O O KKMMMMMrc|j|jfSrr.r6s rr7z!_SharedMemoryTracker.__getstate__s3T5GH Hrc|j|dSr)r4r9s rr;z!_SharedMemoryTracker.__setstate__s DM5 ! ! ! !rN) r?rArBr4r5r:r8r=r7r;rrrr,r,s5/1 / / / / 4 4 4     3 3 3     I I I " " " " "rr,cJeZdZejgdzZdZdZdZdZdZ dZ dS) SharedMemoryServer) track_segmentrelease_segment list_segmentsc"tj|g|Ri||j}t|trt j|}td|dt|_ tj dtdS)Nshm_rfz"SharedMemoryServer started by pid ) rir4r0rTrxosfsdecoder,rshared_memory_contextrr)r3rKkwargsr0s rr4zSharedMemoryServer.__init__s OD 24 2 2 26 2 2 2lG'5)) /+g..$%@G%@%@fhh%@%@AA  & JFFHHFF G G G G Grc t|j|ddr |j|d<tj|||g|Ri|S)Nrj_shared_memory_proxyrI)r8ryrIrirk)r3rIr/rKrJs rrkzSharedMemoryServer.create s\ M t}V,R02HII M262L./=q&B4BBB6BB Brcl |jt||Sr)rIr8rirjrs rrjzSharedMemoryServer.shutdowns. O  & - - / / /??4++ +rc< |j|dSr)rIr5r3rIr4s rrBz SharedMemoryServer.track_segments" M  & 7 7 E E E E Erc< |j|dSr)rIr:rOs rrCz"SharedMemoryServer.release_segments% K  & 6 6| D D D D Drc |jjSr)rIr0rs rrDz SharedMemoryServer.list_segments!s &-; ;rN) r?rArBrirr4rkrjrBrCrDrrrrArAsFFFG H H H C C C , , ,  F F F E E E  < < < < r?r)r3rKrJrUs rr4zSharedMemoryManager.__init__3sw'!! /..... //111   7 7 7 7 7 7 7 J$.1MM688MM N N N N Nrcdtj|jjdt dS)Nz.__del__ by pid )rrr>r?rr6s rr=zSharedMemoryManager.__del__?s/ J$.1MM688MM N N N N Nrc |jjtjkr~|jjtjkrt d|jjtjkrt dt d|jj||j |j |j |j S)Nz"Already started SharedMemoryServerz!SharedMemoryManager has shut downr) rrrrrr rrWrrrrrr6s rrzSharedMemoryManager.get_serverBs N{ EM11;$ 55&'KLLL[&%.88&'JKKK&,33DK4EFFHHH<< $ t/?AA Arc. ||j|j5}tjdd|} t |dd|jfn(#t$r}||d}~wwxYw dddn #1swxYwY|S)NrT)rksizerB) rrrrr7rOr# BaseExceptionr8)r3r[rsmsrs rr7z SharedMemoryManager.SharedMemoryOs 4dmT]CC t#0dNNNT438+FFFF$JJLLLGG               Js4B AB  A:A55A::B  BBc< ||j|j5}tj|} t |dd|jjfn-#t$r }|j |d}~wwxYw dddn #1swxYwY|S)NrrB) rrrr ShareableListrOshmr#r\r8)r3rrslrs rr_z!SharedMemoryManager.ShareableList[s FdmT]CC t"0::T426;.IIII$FMMOOOGJ               Is4BAB B!A<<BBBBN) r?rArBrArr4r=rr7r_rrrrr'st % O O O O O O A A A        rrr)U__all__rrrrqueuerrrGrrrrVr contextr r r rrrrr HAS_SHMEMr` ImportErrorrrJ view_typesr, view_typerrrOrHrrXrcrgrirrr XmlListener XmlClientr|rrrOrr{rrFrrrrrrrrrrrr rr>r BasePoolProxyrrr#rrr%r&r'r(r)r*r)rr,rArrrrrls A @ @    @@@@@@@@@@*I NN()))) III222 5; --- N N4M N N N 33IIy/2222 z MMMMMFMMM.&(b)))) I I ICCCCC)CCC   AAAG*G*G*G*G*VG*G*G*\ F#Z%67):+?@t't't't't'&t't't'tcm=m=m=m=m=m=m=m=f:::*)+,8<7<: E E E E E E E E     F   ++++ / / / / /I / / / + + + + +I + + +]6 4 4 4 4 4 4 4 4AAAAA9AAA&11111Y111&88888888 o0   M+(       ]<*  k, !"  $$       +    Wek*** _ek222 Wioz::: VY^];;; Wio}=== [)"5}EEE ')C"$$$ [)"5~FFF Y 1<@@@ VTY 222 VT9--- VT9--- WeZ000 WeZ000 [)^<<< Z=NNN ]%888  Q""""""""""""""""J*<*<*<*<*>>>>k>>>>>gQQsA88BB