L iddlZddlZddlZddlZddlZddlmZddlmZm Z m Z m Z ddlmZddlmZgdZGdd e Z Gd d e Z y) N)util)FullQueue SimpleQueue _sentinel)assert_spawning)dumps)rrrcHeZdZdfd ZdZdZdZedZdZ xZ S)rc6t|||||_y)N)maxsizectxsuper__init__ _reducers)selfr reducersr __class__s j/mnt/ssd/data/python-lab/Trading/venv/lib/python3.12/site-packages/joblib/externals/loky/backend/queues.pyrzQueue.__init__s c2!c t||j|j|j|j|j |j |j|j|jf SN) r _ignore_epipe_maxsize_reader_writerr_rlock_wlock_sem_opidrs r __getstate__zQueue.__getstate__$sU    MM LL LL NN KK KK II JJ  rc |\ |_|_|_|_|_|_|_|_|_tjdk\r|jy|jy)N) ) rrrrrrrr r!sys version_info_reset _after_forkrstates r __setstate__zQueue.__setstate__2s]    M L L N K K I J   v % KKM    rc tjd|jjt j t j|j|j|j|j|jj|j|j|j|j f d|_d|j"_tjd|j"j'tjd|j(t+j,k(}|j.sV|sTtj0|j"t j2t5j6|j"gd|_tj0|t j:|j|jgd |_y) NzQueue._start_thread()QueueFeederThread)targetargsnameTzdoing self._thread.start()z... done self._thread.start()) exitpriority )rdebug_bufferclear threadingThreadr_feed _notempty _send_bytesrrcloserr_on_queue_feeder_errorr _threaddaemonstartr!osgetpid_joincancelledFinalize_finalize_joinweakrefref _jointhread_finalize_close_close)rcreated_by_this_processs r _start_threadzQueue._start_threadDsR *+  '';;     """"++  %  #  /0  23#'** ";""+B#}} $$T\\*+  D mm   ! ! \\4>> *   rc >tjd|j} |j} |j} |j } t } tjdk7r|j}|j}nd} |  |s| |  | }|| urtjd|yt||}| ||n| ||~~Z#| wxYw#wxYw#t$rYnwxYwn#t$ry}|r#t|ddtjk(rYd}~ytjrtj d|Yd}~y|j||Yd}~nd}~wwxYw$)Nz$starting thread to feed data to pipewin32z%feeder thread got sentinel -- exitingrerrnorzerror in queue thread: )rr6acquirereleasewaitpopleftrr'platformr IndexError BaseExceptiongetattrrREPIPE is_exitinginfo)buffernotempty send_bytes writelockr>r ignore_epipeonerror queue_semnacquirenreleasenwaitbpopleftsentinelwacquirewreleaseobjobj_es rr;z Queue._feedvs| 9:#### >> <<7 " ((H ((HH) $ !J&j(? JJ'NO!G" %S8<#+&t,$J+ *4 0 ( %J$!) " $GAw$:ekk$I ??$II 7s;<%%'AsOO $=sx<D C0 D(D>DC<& D0 C99D< DD DDDD F! F,F7FFc,ddl}|jy)z Private API hook called when feeding data in the background thread raises an exception. For overriding by concurrent.futures. rN) traceback print_exc)rrnrlrps rr?zQueue._on_queue_feeder_errors r)rNN) __name__ __module__ __qualname__rr#r-rN staticmethodr;r? __classcell__rs@rrrs4"  $/ dA$A$Frrc8eZdZdfd ZdZdZdZdZxZS)rc4t||||_y)N)rr)rrrrs rrzSimpleQueue.__init__s S!"rcl|jj|jjyr)rr>rr"s rr>zSimpleQueue.closes"  rct||j|j|j|j|j fSr)rrrrrrr"s rr#zSimpleQueue.__getstate__s7 LL LL NN KK KK   rcF|\|_|_|_|_|_yr)rrrrrr+s rr-zSimpleQueue.__setstate__s%   L L N K Krct||j}|j|jj |y|j5|jj |dddy#1swYyxYw)NrQ)r rrrr`)rrls rputzSimpleQueue.puts\C$..1 ;;  LL # #C ( - '', - - -s A11A:)NN) rrrsrtrr>r#r-r~rvrws@rrrs"   -rr)rCr'rRrHr9multiprocessingrmultiprocessing.queuesrrmp_Queuermp_SimpleQueuermultiprocessing.contextr reductionr __all__rrrsM   4 +cHcL(-.(-r