+
     Bi|1                        . ROt ^ RIt^ RIt^ RIt^ RIt^ RIt^ RIt^ RIt^ RIt^ RI	H
t
Ht ^RIHt ^RIHt ]P                  P                   t^RIHtHtHtHtHt  ! R R ]4      t]! 4       t ! R	 R]4      t ! R
 R]4      tR# )QueueSimpleQueueJoinableQueueN)EmptyFull)
connection)context)debuginfoFinalizeregister_after_fork
is_exitingc                      a  ] tR t^!t o RR ltR tR tR tRR ltRR lt	RR lt
R	 tR
 tR tR tR tR tR tR tR tR t]R 4       t]R 4       t]R 4       t]R 4       t]! ]P8                  4      tRtV tR# )r   c                  V^ 8:  d   ^RI Hp Wn        \        P                  ! RR7      w  V n        V n        VP                  4       V n        \        P                  ! 4       V n        \        P                  R8X  d	   RV n        MVP                  4       V n        VP                  V4      V n        RV n        V P%                  4        \        P                  R8w  d   \'        V \(        P*                  4       R# R# )    )SEM_VALUE_MAXFduplexwin32N)synchronizer   _maxsizer   Pipe_reader_writerLock_rlockosgetpid_opidsysplatform_wlockBoundedSemaphore_sem_ignore_epipe_resetr   r   _after_forkselfmaxsizectxs   &&$-/usr/lib/python3.14/multiprocessing/queues.py__init__Queue.__init__#   s    a<=%/__E%B"dlhhjYY[
<<7"DK((*DK((1	"<<7"e&7&78 #    c                    \         P                  ! V 4       V P                  V P                  V P                  V P
                  V P                  V P                  V P                  V P                  3# N)
r   assert_spawningr$   r   r   r   r   r!   r#   r   r(   s   &r+   __getstate__Queue.__getstate__7   sP    %""DMM4<<T[[$))TZZA 	Ar.   c           	         Vw  V n         V n        V n        V n        V n        V n        V n        V n        V P                  4        R # r0   )	r$   r   r   r   r   r!   r#   r   r%   r(   states   &&r+   __setstate__Queue.__setstate__<   s5    <A	:	T]DL$,	dk49djr.   c                @    \        R 4       V P                  RR7       R# )zQueue._after_fork()T)
after_forkN)r	   r%   r2   s   &r+   r&   Queue._after_forkA   s    #$t$r.   c                   V'       d   V P                   P                  4        M.\        P                  ! \        P                  ! 4       4      V n         \
        P                  ! 4       V n        R V n        R V n	        RV n
        RV n        R V n        V P                  P                  V n        V P                   P"                  V n        V P                   P&                  V n        R # )NF)	_notempty_at_fork_reinit	threading	Conditionr   collectionsdeque_buffer_thread_jointhread_joincancelled_closed_closer   
send_bytes_send_bytesr   
recv_bytes_recv_bytespoll_poll)r(   r;   s   &&r+   r%   Queue._resetE   s    NN**,&001ABDN"((*#<<22<<22\\&&
r.   Nc                   V P                   '       d   \        R V : R24      hV P                  P                  W#4      '       g   \        hV P
                  ;_uu_ 4        V P                  f   V P                  4        V P                  P                  V4       V P
                  P                  4        RRR4       R#   + '       g   i     R# ; izQueue z
 is closedN)rH   
ValueErrorr#   acquirer   r>   rE   _start_threadrD   appendnotifyr(   objblocktimeouts   &&&&r+   put	Queue.putT   s    <<<vdXZ899yy  00J^^^||#""$LL$NN!!#	 ^^^s   AB<<C	c                Z   V P                   '       d   \        R V : R24      hV'       dM   VfI   V P                  ;_uu_ 4        V P                  4       pRRR4       V P                  P                  4        MV'       d   \        P                  ! 4       V,           pV P                  P                  W4      '       g   \        h V'       d;   X\        P                  ! 4       ,
          pV P                  V4      '       g   \        hMV P                  4       '       g   \        hV P                  4       pV P                  P                  4        V P                  P                  4        \        P                  X4      #   + '       g   i     EL/; i  T P                  P                  4        i ; irR   )rH   rS   r   rM   r#   releasetime	monotonicrT   r   rO   _ForkingPicklerloads)r(   rZ   r[   resdeadlines   &&&  r+   get	Queue.get`   s   <<<vdXZ899W_&&( II>>+g5;;&&u66
&&)99G::g..# /K&&(		!!###%$$S))) $ ##%s*   E:F 2F >F 0F :F	F*c                l    V P                   V P                  P                  P                  4       ,
          # r0   )r   r#   _semlock
_get_valuer2   s   &r+   qsizeQueue.qsizez   s$    }}tyy11<<>>>r.   c                ,    V P                  4       '       * # r0   rO   r2   s   &r+   emptyQueue.empty~       ::<r.   c                J    V P                   P                  P                  4       # r0   )r#   ri   _is_zeror2   s   &r+   full
Queue.full   s    yy!!**,,r.   c                $    V P                  R 4      # F)rf   r2   s   &r+   
get_nowaitQueue.get_nowait   s    xxr.   c                &    V P                  VR 4      # rw   )r\   r(   rY   s   &&r+   
put_nowaitQueue.put_nowait   s    xxU##r.   c                \    R V n         V P                  pV'       d   RV n        V! 4        R# R# TN)rH   rI   )r(   closes   & r+   r   Queue.close   s&    DKG r.   c                    \        R 4       V P                  '       g   Q RP                  V 4      4       hV P                  '       d   V P                  4        R# R# )zQueue.join_thread()zQueue {0!r} not closedN)r	   rH   formatrF   r2   s   &r+   join_threadQueue.join_thread   sG    #$|||B5<<TBB| r.   c                    \        R 4       RV n         V P                  P                  4        R#   \         d     R# i ; i)zQueue.cancel_join_thread()TN)r	   rG   rF   cancelAttributeErrorr2   s   &r+   cancel_join_threadQueue.cancel_join_thread   s<    *+"	##% 		s   0 ??c                    V P                   P                  4        \        P                  R 8X  d   V P                  P                  4        V P                  4        V P                  4        R# )r   N)r   r   r   r    r   r   r2   s   &r+   _terminate_brokenQueue._terminate_broken   sG     	 <<7"LL 

r.   c                >   \        R 4       V P                  P                  4        \        P                  ! \
        P                  V P                  V P                  V P                  V P                  V P                  P                  V P                  P                  V P                  V P                  V P                  3	RRR7      V n         \        R4       V P                   P#                  4        \        R4       T P$                  '       gL   \'        T P                   \
        P(                  \*        P,                  ! T P                   4      .RR7      T n        \'        T \
        P0                  T P                  T P                  .^
R7      T n        R#    RT n        h ; i)	zQueue._start_thread()QueueFeederThreadT)targetargsnamedaemonzdoing self._thread.start()z... done self._thread.start()N)exitpriority)r	   rD   clearr@   Threadr   _feedr>   rK   r!   r   r   r   r$   _on_queue_feeder_errorr#   rE   startrG   r   _finalize_joinweakrefrefrF   _finalize_closerI   r2   s   &r+   rU   Queue._start_thread   s5   %& 	 '';;,,0@0@++t||114<<3E3E$$d&A&A)) %
	./LL 12 """'e22T\\*+ D %''\\4>>*	  DLs   0F 
Fc                    \        R 4       V ! 4       pVe   VP                  4        \        R4       R# \        R4       R# )zjoining queue threadNz... queue thread joinedz... queue thread already dead)r	   join)twrthreads   & r+   r   Queue._finalize_join   s3    $%KKM+,12r.   c                    \        R 4       V;_uu_ 4        V P                  \        4       VP                  4        RRR4       R#   + '       g   i     R# ; i)ztelling queue thread to quitN)r	   rV   	_sentinelrW   )buffernotemptys   &&r+   r   Queue._finalize_close   s2    ,-XMM)$OO XXXs   &AA	c	                J   \        R 4       VP                  p	VP                  p
VP                  pV P                  p\
        p\        P                  R8w  d   VP                  pVP                  pMRp  V	! 4         V '       g   V! 4        V
! 4          V! 4       pVVJ d   \        R4       V! 4        V! 4        R# \        P                  V4      pVf   V! V4       KL  V! 4         V! V4       X! 4        Ke    T
! 4        i ; i  X! 4        i ; i  \         d     K  i ; i  \         dv   pT'       d'   \        TR^ 4      \        P                  8X  d    Rp?R# \        4       '       d   \!        RT4        Rp?R# TP                  4        T! TX4        Rp?EK+  Rp?ii ; i)z$starting thread to feed data to piper   Nz%feeder thread got sentinel -- exitingerrnozerror in queue thread: %s)r	   rT   r_   waitpopleftr   r   r    rb   dumps
IndexError	Exceptiongetattrr   EPIPEr   r
   )r   r   rJ   	writelockreader_closewriter_closeignore_epipeonerror	queue_semnacquirenreleasenwaitbpopleftsentinelwacquirewreleaserY   es   &&&&&&&&&         r+   r   Queue._feed   s\    	45####>><<7" ((H ((HH-$
!J&j(?!"IJ(N(N" .33C8#+&sO$J+ *3 (
' J& !)
!  $GAw$:ekk$I
 <<4a8 %%'AsOO#$s~   4D" <C8 C8 D" 'D <*D 'D /	D 8	DD" 	DD DD" DD" "F"-(FF=FF"c                .    ^ RI pVP                  4        R# )z
Private API hook called when feeding data in the background thread
raises an exception.  For overriding by concurrent.futures.
N)	traceback	print_exc)r   rY   r   s   && r+   r   Queue._on_queue_feeder_error$  s     	r.   )rD   rI   rH   r$   rG   rF   r   r>   r   rO   r   rM   r   r#   rK   rE   r!   r   r   rw   r   ) __name__
__module____qualname____firstlineno__r,   r3   r8   r&   r%   r\   rf   rk   ro   rt   rx   r|   r   r   r   r   rU   staticmethodr   r   r   r   classmethodtypesGenericAlias__class_getitem____static_attributes____classdictcell____classdict__s   @r+   r   r   !   s     9(A

%'
$*4? -$%N 3 3   <$ <$|   $E$6$67r.   c                   L   a  ] tR tRt o R
R ltR tR tRR ltR tR t	R	t
V tR# )r   i:  c                   \         P                  WVR 7       VP                  ^ 4      V n        VP	                  4       V n        R# ))r*   N)r   r,   	Semaphore_unfinished_tasksrA   _condr'   s   &&$r+   r,   JoinableQueue.__init__<  s0    t#.!$q!1]]_
r.   c                f    \         P                  V 4      V P                  V P                  3,           # r0   )r   r3   r   r   r2   s   &r+   r3   JoinableQueue.__getstate__A  s'    !!$'4::t7M7M*NNNr.   c                Z    \         P                  WR R 4       VRR  w  V n        V n        R # )N)r   r8   r   r   r6   s   &&r+   r8   JoinableQueue.__setstate__D  s+    4s,-223Z*
D*r.   Nc           	     4   V P                   '       d   \        R V : R24      hV P                  P                  W#4      '       g   \        hV P
                  ;_uu_ 4        V P                  ;_uu_ 4        V P                  f   V P                  4        V P                  P                  V4       V P                  P                  4        V P
                  P                  4        RRR4       RRR4       R#   + '       g   i     L; i  + '       g   i     R# ; irR   )rH   rS   r#   rT   r   r>   r   rE   rU   rD   rV   r   r_   rW   rX   s   &&&&r+   r\   JoinableQueue.putH  s    <<<vdXZ899yy  00J^^^TZZZ||#""$LL$""**,NN!!# (^^ZZ^^^s%   D3A.C3	!D3D>DD	c                H   V P                   ;_uu_ 4        V P                  P                  R 4      '       g   \        R4      hV P                  P                  P                  4       '       d   V P                   P                  4        RRR4       R#   + '       g   i     R# ; i)Fz!task_done() called too many timesN)r   r   rT   rS   ri   rs   
notify_allr2   s   &r+   	task_doneJoinableQueue.task_doneU  se    ZZZ))11%88 !DEE%%..7799

%%'	 ZZZs   AB,BB!	c                    V P                   ;_uu_ 4        V P                  P                  P                  4       '       g   V P                   P	                  4        R R R 4       R #   + '       g   i     R # ; ir0   )r   r   ri   rs   r   r2   s   &r+   r   JoinableQueue.join\  s@    ZZZ))22;;==

! ZZZs   AA$$A5	)r   r   r   r   )r   r   r   r   r,   r3   r8   r\   r   r   r   r   r   s   @r+   r   r   :  s)     %
O8$(" "r.   c                   n   a  ] tR tRt o R tR tR tR tR tR t	R t
]! ]P                  4      tR	tV tR
# )r   ie  c                  \         P                  ! R R7      w  V n        V n        VP	                  4       V n        V P                  P                  V n        \        P                  R8X  d
   RV n
        R# VP	                  4       V n
        R# )Fr   r   N)r   r   r   r   r   r   rN   rO   r   r    r!   )r(   r*   s   &$r+   r,   SimpleQueue.__init__g  sW    %/__E%B"dlhhj\\&&
<<7"DK((*DKr.   c                n    V P                   P                  4        V P                  P                  4        R # r0   )r   r   r   r2   s   &r+   r   SimpleQueue.closep  s"    r.   c                ,    V P                  4       '       * # r0   rn   r2   s   &r+   ro   SimpleQueue.emptyt  rq   r.   c                    \         P                  ! V 4       V P                  V P                  V P                  V P
                  3# r0   )r   r1   r   r   r   r!   r2   s   &r+   r3   SimpleQueue.__getstate__w  s/    %dllDKKEEr.   c                r    Vw  V n         V n        V n        V n        V P                   P                  V n        R # r0   )r   r   r   r!   rN   rO   r6   s   &&r+   r8   SimpleQueue.__setstate__{  s)    AF>t|T[$+\\&&
r.   c                    V P                   ;_uu_ 4        V P                  P                  4       pR R R 4       \        P	                  X4      #   + '       g   i     L%; ir0   )r   r   rL   rb   rc   )r(   rd   s   & r+   rf   SimpleQueue.get  s=    [[[,,))+C  $$S)) [s   AA	c                   \         P                  V4      pV P                  f   V P                  P	                  V4       R # V P                  ;_uu_ 4        V P                  P	                  V4       R R R 4       R #   + '       g   i     R # ; ir0   )rb   r   r!   r   rJ   r{   s   &&r+   r\   SimpleQueue.put  sU    ##C(;;LL##C('', s   A;;B	)rO   r   r   r!   r   N)r   r   r   r   r,   r   ro   r3   r8   rf   r\   r   r   r   r   r   r   r   s   @r+   r   r   e  s<     % F'*- $E$6$67r.   )r   r   r   )__all__r   r   r@   rB   r`   r   r   r   queuer   r    r   r   	reductionForkingPicklerrb   utilr	   r
   r   r   r   objectr   r   r   r    r.   r+   <module>r      su    4 
 	         ##22 H HL8F L8^ H	%"E %"V*8& *8r.   