HEX
Server: Apache/2.4.52 (Ubuntu)
System: Linux spn-python 5.15.0-89-generic #99-Ubuntu SMP Mon Oct 30 20:42:41 UTC 2023 x86_64
User: arjun (1000)
PHP: 8.1.2-1ubuntu2.20
Disabled: NONE
Upload Files
File: //snap/core20/2669/usr/share/subiquity/subiquitycore/__pycache__/async_helpers.cpython-38.pyc
U

K��^	�@sNddlZddlZddlZe�d�Zdd�Zddd�Zdd	�ZGd
d�d�Z	dS)
�Nzsubiquitycore.async_helperscCs(z|��Wntjk
r"YnXdS�N)�result�asyncio�CancelledError)Zfut�r�3/usr/share/subiquity/subiquitycore/async_helpers.py�_donesrTcCsBt��}t�|�rt�|�}n|}|r0|�t�|�tj|�|Sr)r�get_event_loop�iscoroutine�TaskZadd_done_callbackrZ	call_soonZ
ensure_future)�coro�propagate_errors�loop�taskrrr�
schedule_tasks

rc�sFt��}z|jd|f|��IdHWStjjk
r@tj�YnXdSr)rr	Zrun_in_executor�
concurrentZfuturesr)�func�argsrrrr�
run_in_thread*s
rc@s6eZdZd
dd�Zdd�Zdd�Zdd	�Zd
d�ZdS)�SingleInstanceTaskTcCs||_||_d|_dSr)rr
r)�selfrr
rrr�__init__4szSingleInstanceTask.__init__c�sF|dk	r4|��z|IdHWntk
r2YnXt|j|j�dSr)Zcancel�
BaseExceptionrrr
)r�oldrrr�_start9szSingleInstanceTask._startc�s|j||�IdH|jSr)�
start_syncr)rr�kwrrr�startBszSingleInstanceTask.startcOs>|j}|j||�}t�|�r*t�|�|_n||_t|�|��Sr)rrrr
rrr)rrrrrrrrrFs
zSingleInstanceTask.start_syncc�s,z|jIdHWStjk
r$YqXqdSr)rrr)rrrr�waitOszSingleInstanceTask.waitN)T)�__name__�
__module__�__qualname__rrrrrrrrrr2s

		r)T)
rZconcurrent.futuresrZloggingZ	getLogger�logrrrrrrrr�<module>s