# {py:mod}`simvx.core.helpers.coroutines` ```{py:module} simvx.core.helpers.coroutines ``` ```{autodoc2-docstring} simvx.core.helpers.coroutines :allowtitles: ``` ## Module Contents ### Functions ````{list-table} :class: autosummary longtable :align: left * - {py:obj}`parallel ` - ```{autodoc2-docstring} simvx.core.helpers.coroutines.parallel :summary: ``` * - {py:obj}`wait ` - ```{autodoc2-docstring} simvx.core.helpers.coroutines.wait :summary: ``` * - {py:obj}`wait_until ` - ```{autodoc2-docstring} simvx.core.helpers.coroutines.wait_until :summary: ``` * - {py:obj}`wait_signal ` - ```{autodoc2-docstring} simvx.core.helpers.coroutines.wait_signal :summary: ``` * - {py:obj}`next_frame ` - ```{autodoc2-docstring} simvx.core.helpers.coroutines.next_frame :summary: ``` ```` ### API ````{py:function} parallel(*coroutines: simvx.core.descriptors.Coroutine) -> simvx.core.descriptors.Coroutine :canonical: simvx.core.helpers.coroutines.parallel ```{autodoc2-docstring} simvx.core.helpers.coroutines.parallel ``` ```` ````{py:function} wait(seconds: float) -> simvx.core.descriptors.Coroutine :canonical: simvx.core.helpers.coroutines.wait ```{autodoc2-docstring} simvx.core.helpers.coroutines.wait ``` ```` ````{py:function} wait_until(condition: collections.abc.Callable[[], bool]) -> simvx.core.descriptors.Coroutine :canonical: simvx.core.helpers.coroutines.wait_until ```{autodoc2-docstring} simvx.core.helpers.coroutines.wait_until ``` ```` ````{py:function} wait_signal(signal: simvx.core.descriptors.Signal) -> simvx.core.descriptors.Coroutine :canonical: simvx.core.helpers.coroutines.wait_signal ```{autodoc2-docstring} simvx.core.helpers.coroutines.wait_signal ``` ```` ````{py:function} next_frame() -> simvx.core.descriptors.Coroutine :canonical: simvx.core.helpers.coroutines.next_frame ```{autodoc2-docstring} simvx.core.helpers.coroutines.next_frame ``` ````