diff --git a/.coveragerc b/.coveragerc index 1f383608e..d505ff27e 100644 --- a/.coveragerc +++ b/.coveragerc @@ -6,6 +6,7 @@ omit = reflex/__main__.py reflex/app_module_for_backend.py reflex/components/chakra/* + reflex/experimental/* [report] show_missing = true diff --git a/reflex/experimental/__init__.py b/reflex/experimental/__init__.py index 5c5fae9a7..7570f9347 100644 --- a/reflex/experimental/__init__.py +++ b/reflex/experimental/__init__.py @@ -4,6 +4,7 @@ from types import SimpleNamespace from ..utils.console import warn from . import hooks as hooks +from .misc import run_in_thread as run_in_thread warn( "`rx._x` contains experimental features and might be removed at any time in the future .", @@ -11,4 +12,5 @@ warn( _x = SimpleNamespace( hooks=hooks, + run_in_thread=run_in_thread, ) diff --git a/reflex/experimental/misc.py b/reflex/experimental/misc.py new file mode 100644 index 000000000..fec0bb992 --- /dev/null +++ b/reflex/experimental/misc.py @@ -0,0 +1,12 @@ +"""Miscellaneous functions for the experimental package.""" + +import asyncio + + +async def run_in_thread(func): + """Run a function in a separate thread. + + Args: + func (callable): The function to run. + """ + await asyncio.get_event_loop().run_in_executor(None, func)