29 lines
860 B
Python
29 lines
860 B
Python
# import asyncio
|
|
from typing import Any, Callable, List, Optional
|
|
|
|
from .metaclasses import Singleton
|
|
|
|
|
|
# class ComfyThreading(metaclass=Singleton):
|
|
# """
|
|
# A singleton class to provide threading functionality for a comfy extension.
|
|
# """
|
|
# def __init__(self) -> None:
|
|
# pass
|
|
#
|
|
# @classmethod
|
|
# def wait_for_async(cls, async_fn: Callable[[], Any], loop: Optional[asyncio.AbstractEventLoop] = None) -> Any:
|
|
# res: List[Any] = []
|
|
# async def run_async() -> None:
|
|
# r = await async_fn()
|
|
# res.append(r)
|
|
# if loop is None:
|
|
# try:
|
|
# loop = asyncio.get_event_loop()
|
|
# except:
|
|
# loop = asyncio.new_event_loop()
|
|
# asyncio.set_event_loop(loop)
|
|
# loop.run_until_complete(run_async())
|
|
# return res[0]
|
|
|