+
     Bi-                     (   ^ RI t ^ RIt^ RIt^RIHt ^RIHt R)t ! R R]4      t ! R R]4      t	 ! R R	]4      t
 ! R
 R]4      t ! R R]4      t ! R R]P                  4      t ! R R]4      t]P"                  R8w  d    ! R R]P                  4      t ! R R]P                  4      t ! R R]P                  4      t ! R R]4      t ! R R]4      t ! R R]4      tR]! 4       R ]! 4       R!]! 4       /t]P2                  '       d"   ]P"                  R"8w  d   ]! ]R!,          4      tMH]! ]R ,          4      tM8 ! R# R]P                  4      t ! R$ R]4      tR ]! 4       /t]! ]R ,          4      tR% t]P8                  ! 4       tR& tR' tR( t R# )*    N)process)	reductionc                       ] tR t^tRtR# )ProcessError N__name__
__module____qualname____firstlineno____static_attributes__r       ./usr/lib/python3.14/multiprocessing/context.pyr   r          r   r   c                       ] tR t^tRtR# )BufferTooShortr   Nr   r   r   r   r   r      r   r   r   c                       ] tR t^tRtR# )TimeoutErrorr   Nr   r   r   r   r   r      r   r   r   c                       ] tR t^tRtR# )AuthenticationErrorr   Nr   r   r   r   r   r      r   r   r   c                     a  ] tR t^t o ]t]t]t]t]! ]	P                  4      t
]! ]	P                  4      t]! ]	P                  4      tR tR tR#R ltR tR tR$R ltR%R	 ltR%R
 ltR tR&R ltR'R ltR'R ltR tR(R ltR tR tRR/R ltRR/R ltR tR t R$R lt!R t"R t#R t$R$R lt%R)R lt&R)R lt'](R 4       t)])PT                  R  4       t)R! t+R"t,V t-R# )*BaseContextc                N    \         P                  ! 4       pVf   \        R4      hV# )z(Returns the number of CPUs in the systemzcannot determine number of cpus)os	cpu_countNotImplementedError)selfnums   & r   r   BaseContext.cpu_count)   s#    lln;%&GHHJr   c                `    ^RI Hp V! V P                  4       R7      pVP                  4        V# )zReturns a manager associated with a running server process

The managers methods such as `Lock()`, `Condition()` and `Queue()`
can be used to create shared objects.
)SyncManagerctx)managersr!   get_contextstart)r   r!   ms   &  r   ManagerBaseContext.Manager1   s(     	*D,,./		r   Tc                    ^RI Hp V! V4      # )z1Returns two connection object connected by a pipe)Pipe)
connectionr+   )r   duplexr+   s   && r   r+   BaseContext.Pipe<   s    $F|r   c                <    ^RI Hp V! V P                  4       R7      # )z#Returns a non-recursive lock object)Lockr"   )synchronizer0   r%   )r   r0   s   & r   r0   BaseContext.LockA   s    %((*++r   c                <    ^RI Hp V! V P                  4       R7      # )zReturns a recursive lock object)RLockr"   )r1   r4   r%   )r   r4   s   & r   r4   BaseContext.RLockF       &))+,,r   Nc                <    ^RI Hp V! WP                  4       R7      # )zReturns a condition object)	Conditionr"   )r1   r8   r%   )r   lockr8   s   && r   r8   BaseContext.ConditionK   s    *#3#3#566r   c                <    ^RI Hp V! WP                  4       R7      # )zReturns a semaphore object)	Semaphorer"   )r1   r<   r%   )r   valuer<   s   && r   r<   BaseContext.SemaphoreP   s    *$4$4$677r   c                <    ^RI Hp V! WP                  4       R7      # )z"Returns a bounded semaphore object)BoundedSemaphorer"   )r1   r@   r%   )r   r=   r@   s   && r   r@   BaseContext.BoundedSemaphoreU   s    1+;+;+=>>r   c                <    ^RI Hp V! V P                  4       R7      # )zReturns an event object)Eventr"   )r1   rC   r%   )r   rC   s   & r   rC   BaseContext.EventZ   r6   r   c                >    ^RI Hp V! WW0P                  4       R7      # )zReturns a barrier object)Barrierr"   )r1   rF   r%   )r   partiesactiontimeoutrF   s   &&&& r   rF   BaseContext.Barrier_   s    (w5E5E5GHHr   c                <    ^RI Hp V! WP                  4       R7      # )Returns a queue object)Queuer"   )queuesrM   r%   )r   maxsizerM   s   && r   rM   BaseContext.Queued   s    !W"2"2"455r   c                <    ^RI Hp V! WP                  4       R7      # )rL   )JoinableQueuer"   )rN   rR   r%   )r   rO   rR   s   && r   rR   BaseContext.JoinableQueuei   s    )W*:*:*<==r   c                <    ^RI Hp V! V P                  4       R7      # )rL   )SimpleQueuer"   )rN   rU   r%   )r   rU   s   & r   rU   BaseContext.SimpleQueuen   s    't//122r   c                @    ^RI Hp V! WW4V P                  4       R7      # )zReturns a process pool object)Pool)context)poolrX   r%   )r   	processesinitializerinitargsmaxtasksperchildrX   s   &&&&& r   rX   BaseContext.Pools   s$     	IH ,,.0 	0r   c                "    ^RI Hp V! V.VO5!  # )zReturns a shared object)RawValue)sharedctypesra   )r   typecode_or_typeargsra   s   &&* r   ra   BaseContext.RawValuez   s    *(0400r   c                    ^RI Hp V! W4      # )zReturns a shared array)RawArray)rb   rg   )r   rc   size_or_initializerrg   s   &&& r   rg   BaseContext.RawArray   s    *(>>r   r9   c               F    ^RI Hp V! V.VO5RVRV P                  4       / # )z$Returns a synchronized shared object)Valuer9   r#   )rb   rk   r%   )r   rc   r9   rd   rk   s   &&$* r   rk   BaseContext.Value   s4    '% - -4 -))+- 	-r   c               @    ^RI Hp V! WVV P                  4       R7      # )z#Returns a synchronized shared array)Array)r9   r#   )rb   rn   r%   )r   rc   rh   r9   rn   s   &&&$ r   rn   BaseContext.Array   s#    '%))+- 	-r   c                    V P                  4       R8X  d)   \        \        RR4      '       d   ^RIHp V! 4        R# R# R# )z{Check whether this is a fake forked process in a frozen executable.
If so then run code specified by commandline and exit.
spawnfrozenF)freeze_supportN)get_start_methodgetattrsysrq   rs   )r   rs   s   & r   rs   BaseContext.freeze_support   s5       "g-'#x2O2O- 3P-r   c                    ^RI Hp V! 4       # )zJReturn package logger -- if it does not already exist then
it is created.
)
get_logger)utilry   )r   ry   s   & r   ry   BaseContext.get_logger   s     	%|r   c                    ^RI Hp V! V4      # )z8Turn on logging and add a handler which prints to stderr)log_to_stderr)rz   r}   )r   levelr}   s   && r   r}   BaseContext.log_to_stderr   s    'U##r   c                    ^RI Hp R# )zFInstall support for sending connections and sockets
between processes
)r,   N) r,   )r   r,   s   & r   allow_connection_pickling%BaseContext.allow_connection_pickling   s     	!r   c                "    ^RI Hp V! V4       R# )zSets 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.
)set_executableN)rq   r   )r   
executabler   s   && r   r   BaseContext.set_executable   s    
 	*z"r   c                "    ^RI Hp V! V4       R# )z[Set list of module names to try to load in forkserver process.
This is really just a hint.
)set_forkserver_preloadN)
forkserverr   )r   module_namesr   s   && r   r   "BaseContext.set_forkserver_preload   s     	7|,r   c                    Vf   V #  \         V,          pTP                  4        T#   \         d    \        RT,          4      R hi ; i)Nzcannot find context for %r)_concrete_contextsKeyError
ValueError_check_available)r   methodr#   s   && r   r%   BaseContext.get_context   sU    >K	N$V,C 	
  	N9FBCM	Ns	   ' Ac                    V P                   # N)_namer   
allow_nones   &&r   rt   BaseContext.get_start_method   s    zzr   c                    \        R 4      h)z+cannot set start method of concrete context)r   r   r   forces   &&&r   set_start_methodBaseContext.set_start_method   s    FGGr   c                4    \        4       P                  R4      # )zWControls how objects will be reduced to a form that can be
shared with other processes.r   )globalsgetr   s   &r   reducerBaseContext.reducer   s     y}}[))r   c                     V\        4       R &   R# )r   N)r   )r   r   s   &&r   r   r      s    !*	+r   c                    R # r   r   r   s   &r   r   BaseContext._check_available   s    r   r   )Tr   )   )NN)r   )NNr   NF).r	   r
   r   r   r   r   r   r   staticmethodr   current_processparent_processactive_childrenr   r(   r+   r0   r4   r8   r<   r@   rC   rF   rM   rR   rU   rX   ra   rg   rk   rn   rs   ry   r}   r   r   r   r%   rt   r   propertyr   setterr   r   __classdictcell____classdict__s   @r   r   r      s    L#NL-"7#:#:;O!'"8"89N"7#:#:;O	
,
-
7
8
?
-
I
6
>
3
01
?
-$ --4 -$
!#-H * *
 ^^+ + r   r   c                   D   a  ] tR t^t o Rt]R 4       t]R 4       tRtV t	R# )ProcessNc                \    \         P                  4       P                  P                  V 4      # r   )_default_contextr%   r   _Popen)process_objs   &r   r   Process._Popen   s"    ++-55<<[IIr   c                 Z    \         P                  4       P                  P                  4       # r   )r   r%   r   _after_forkr   r   r   r   Process._after_fork   s     ++-55AACCr   r   
r	   r
   r   r   _start_methodr   r   r   r   r   r   s   @r   r   r      s4     MJ J D Dr   r   c                   Z   a a ] tR t^t o]tR tRV 3R lltRR ltRR ltR t	Rt
VtV ;t# )	DefaultContextc                     Wn         R V n        R # r   )r   _actual_context)r   rY   s   &&r   __init__DefaultContext.__init__   s     '#r   c                   < Vf,   V P                   f   V P                  V n         V P                   # \        SV `  V4      # r   )r   r   superr%   )r   r   	__class__s   &&r   r%   DefaultContext.get_context   s>    >##+'+'<'<$'''7&v..r   c                    V P                   e   V'       g   \        R4      hVf   V'       d
   R V n         R # V P                  V4      V n         R # )Nzcontext has already been set)r   RuntimeErrorr%   r   s   &&&r   r   DefaultContext.set_start_method   sA    +E=>>>e#'D #//7r   c                    V P                   f   V'       d   R # V P                  V n         V P                   P                  # r   )r   r   r   r   s   &&r   rt   DefaultContext.get_start_method   s4    '#'#8#8D ##)))r   c                   a V P                   P                  4       oS.pVP                  V3R l\         4       4       V# )z=Returns a list of the supported start methods, default first.c              3   8   <"   T F  qS8w  g   K  Vx  K  	  R # 5ir   r   ).0namedefaults   & r   	<genexpr>7DefaultContext.get_all_start_methods.<locals>.<genexpr>  s      "
/T7?DD/s   
)r   rt   extendr   )r   start_method_namesr   s   & @r   get_all_start_methods$DefaultContext.get_all_start_methods  sB    ''88:%Y!! "
/"
 	
 "!r   )r   r   r   r   )r	   r
   r   r   r   r   r%   r   rt   r   r   r   __classcell__)r   r   s   @@r   r   r      s(     G$/8*" "r   r   win32c                   4   a  ] tR tRt o Rt]R 4       tRtV tR# )ForkProcessi  forkc                    ^RI Hp V! V 4      # r   )Popen)
popen_forkr   r   r   s   & r   r   ForkProcess._Popen  s    )%%r   r   N	r	   r
   r   r   r   r   r   r   r   r   s   @r   r   r     s     		& 
	&r   r   c                   D   a  ] tR tRt o Rt]R 4       t]R 4       tRtV t	R# )SpawnProcessi  rq   c                    ^RI Hp V! V 4      # r   )popen_spawn_posixr   r   s   & r   r   SpawnProcess._Popen      0%%r   c                     R # r   r   r   r   r   r   SpawnProcess._after_fork"       r   r   Nr   r   s   @r   r   r     0     		& 
	& 
	 
	r   r   c                   4   a  ] tR tRt o Rt]R 4       tRtV tR# )ForkServerProcessi'  r   c                    ^RI Hp V! V 4      # r   )popen_forkserverr   r   s   & r   r   ForkServerProcess._Popen)  s    /%%r   r   Nr   r   s   @r   r   r   '  s     $		& 
	&r   r   c                       ] tR tRtRt]tRtR# )ForkContexti.  r   r   N)r	   r
   r   r   r   r   r   r   r   r   r   r   r   .  s    r   r   c                       ] tR tRtRt]tRtR# )SpawnContexti2  rq   r   Nr	   r
   r   r   r   r   r   r   r   r   r   r   r   2      r   r   c                   .   a  ] tR tRt o Rt]tR tRtV t	R# )ForkServerContexti6  r   c                H    \         P                  '       g   \        R 4      hR# )z%forkserver start method not availableN)r   HAVE_SEND_HANDLEr   r   s   &r   r   "ForkServerContext._check_available9  s    --- !HII .r   r   N)
r	   r
   r   r   r   r   r   r   r   r   r   s   @r   r   r   6  s     #	J 	Jr   r   r   rq   r   darwinc                   D   a  ] tR tRt o Rt]R 4       t]R 4       tRtV t	R# )r   iL  rq   c                    ^RI Hp V! V 4      # r   )popen_spawn_win32r   r   s   & r   r   r   N  r   r   c                     R # r   r   r   r   r   r   r   S  r   r   r   Nr   r   s   @r   r   r   L  r   r   c                       ] tR tRtRt]tRtR# )r   iX  rq   r   Nr   r   r   r   r   r   X  r   r   c                 2    \         V ,          \        n        R # r   )r   r   r   )r   s   &r   _force_start_methodr  e  s    '9&'A$r   c                  $    \        \        R R4      # )spawning_popenN)ru   _tlsr   r   r   get_spawning_popenr
  n  s    4)400r   c                     V \         n        R # r   )r	  r  )popens   &r   set_spawning_popenr  q  s
    Dr   c                 h    \        4       f&   \        R\        V 4      P                  ,          4      hR # )NzF%s objects should only be shared between processes through inheritance)r
  r   typer	   )objs   &r   assert_spawningr  t  s4    ##%)#Y%7%78 	 $r   r   )!r   rv   	threadingr   r   r   __all__	Exceptionr   r   r   r   objectr   BaseProcessr   r   platformr   r   r   r   r   r   r   r   r   r  localr	  r
  r  r  r   r   r   <module>r     s   	 
   
	9 		\ 		< 		, 	x& x|Dg!! D%"[ %"X <<7&g)) &
w** 
&G// &k { JK J 	') !!!cllh&>)*<\*JK)*<W*EF
w** 
{ 
 	 &&8&ABB 1 r   