
    ʆh                        S SK Jr  S SKrS SKJr  S SKJr  \(       a
  S SKrS SKJr  \R                  " \
5      r " S S\5      rg)    )annotationsN)TYPE_CHECKING)
BaseThread)Callablec                  6   ^  \ rS rSrSU 4S jjrSS jrSrU =r$ )ProcessWatcher   c                :   > [         TU ]  5         Xl        X l        g )N)super__init__	popen_objprocess_termination_callback)selfr   r   	__class__s      V/opt/services/DDDS/venv/lib/python3.13/site-packages/watchdog/utils/process_watcher.pyr   ProcessWatcher.__init__   s    ",H)    c                   U R                   R                  5       c<  U R                  R                  SS9(       a  g U R                   R                  5       c  M<   U R                  R	                  5       (       d#  U R
                  (       a  U R                  5         g g g ! [         a    [        R                  S5         g f = f)Ng?)timeoutz*Error calling process termination callback)	r   pollstopped_eventwaitis_setr   	Exceptionlogger	exception)r   s    r   runProcessWatcher.run   s    nn!!#+!!&&s&3 nn!!#+	K%%,,..43T3T113 4U. 	KIJ	Ks   A B B>=B>)r   r   )r   zsubprocess.Popenr   zCallable[[], None] | NonereturnNone)r   r    )__name__
__module____qualname____firstlineno__r   r   __static_attributes____classcell__)r   s   @r   r   r      s    I
	K 	Kr   r   )
__future__r   loggingtypingr   watchdog.utilsr   
subprocessr   	getLoggerr!   r   r    r   r   <module>r.      s8    "    %			8	$KZ Kr   