U 췀gp@sddlZddlZddlmZmZddlmZmZddlmZddl m Z ddl m Z e r|ddl m Z ddl mZdd l mZeZGd d d ZdS) N)sleeptime)Queue FullError)logger)DEFAULT_QUEUE_SIZE) TYPE_CHECKING)Any)Optional)Callablec@sneZdZefddZeddZddZddZd d Z d d Z dddZ ddZ ddZ ddZddZd S)BackgroundWorkercCs$t||_t|_d|_d|_dSN)r_queue threadingLock_lock_thread_thread_for_pid)selfZ queue_sizer?/opt/hc_python/lib/python3.8/site-packages/sentry_sdk/worker.py__init__s  zBackgroundWorker.__init__cCs&|jtkrdS|jsdS|jS)NF)rosgetpidris_aliverrrrrs zBackgroundWorker.is_alivecCs|js|dSr )rstartrrrr_ensure_thread%szBackgroundWorker._ensure_threadcCsdt|}|j}|jz8|jrL|t}|dkrs