
    i                     b    d dl mZ d dlmZmZ d dlmZ d dlmZ d dl	m
Z
  G d de          ZdS )	    )absolute_import)ThreadEvent)BaseScheduler)BlockingScheduler)asboolc                   6     e Zd ZdZdZ fdZd Z fdZ xZS )BackgroundSchedulerah  
    A scheduler that runs in the background using a separate thread
    (:meth:`~apscheduler.schedulers.base.BaseScheduler.start` will return immediately).

    Extra options:

    ========== =============================================================================
    ``daemon`` Set the ``daemon`` option in the background thread (defaults to ``True``, see
               `the documentation
               <https://docs.python.org/3.4/library/threading.html#thread-objects>`_
               for further details)
    ========== =============================================================================
    Nc                     t          |                    dd                    | _        t          t          |                               |           d S )NdaemonT)r   pop_daemonsuperr
   
_configure)selfconfig	__class__s     g/var/www/html/crypto-bot/backend/venv/lib/python3.11/site-packages/apscheduler/schedulers/background.pyr   zBackgroundScheduler._configure   sE    fjj48899!4((33F;;;;;    c                     | j         | j                                         rt                      | _         t          j        | g|R i | t          | j        d          | _        | j        | j        _	        | j                                         d S )NAPScheduler)targetname)
_eventis_setr   r   startr   
_main_loop_threadr   r   )r   argskwargss      r   r   zBackgroundScheduler.start   s    ;$+"4"4"6"6''DKD242226222T_=III"lr   c                 ~     t          t          |           j        |i | | j                                         | `d S )N)r   r
   shutdownr   join)r   r   r    r   s      r   r"   zBackgroundScheduler.shutdown(   sC    1!4((14B6BBBLLLr   )	__name__
__module____qualname____doc__r   r   r   r"   __classcell__)r   s   @r   r
   r
   
   sq          G< < < < <          r   r
   N)
__future__r   	threadingr   r   apscheduler.schedulers.baser   apscheduler.schedulers.blockingr   apscheduler.utilr   r
    r   r   <module>r/      s    & & & & & & # # # # # # # # 5 5 5 5 5 5 = = = = = = # # # # # #! ! ! ! !+ ! ! ! ! !r   