|
@@ -118,7 +118,9 @@ def next_client_event():
|
|
|
@chose_impl
|
|
|
def hold():
|
|
|
"""保持会话,直到用户关闭浏览器,
|
|
|
- 此时函数抛出 `SessionClosedException <pywebio.exceptions.SessionClosedException>` 异常
|
|
|
+ 此时函数抛出 `SessionClosedException <pywebio.exceptions.SessionClosedException>` 异常。
|
|
|
+
|
|
|
+ 注意⚠️:在 :ref:`基于协程 <coroutine_based_session>` 的会话上下文中,需要使用 ``await hold()`` 语法来进行调用。
|
|
|
"""
|
|
|
while True:
|
|
|
yield next_client_event()
|
|
@@ -126,7 +128,7 @@ def hold():
|
|
|
|
|
|
@check_session_impl(CoroutineBasedSession)
|
|
|
def run_async(coro_obj):
|
|
|
- """异步运行协程对象。协程中依然可以调用 PyWebIO 交互函数。 仅能在基于协程的会话上下文中调用
|
|
|
+ """异步运行协程对象。协程中依然可以调用 PyWebIO 交互函数。 仅能在 :ref:`基于协程 <coroutine_based_session>` 的会话上下文中调用
|
|
|
|
|
|
:param coro_obj: 协程对象
|
|
|
:return: An instance of `TaskHandle <pywebio.session.coroutinebased.TaskHandle>` is returned, which can be used later to close the task.
|
|
@@ -136,7 +138,7 @@ def run_async(coro_obj):
|
|
|
|
|
|
@check_session_impl(CoroutineBasedSession)
|
|
|
async def run_asyncio_coroutine(coro_obj):
|
|
|
- """若会话线程和运行事件的线程不是同一个线程,需要用 run_asyncio_coroutine 来运行asyncio中的协程。 仅能在基于协程的会话上下文中调用
|
|
|
+ """若会话线程和运行事件的线程不是同一个线程,需要用 run_asyncio_coroutine 来运行asyncio中的协程。 仅能在 :ref:`基于协程 <coroutine_based_session>` 的会话上下文中调用。
|
|
|
|
|
|
:param coro_obj: 协程对象
|
|
|
"""
|
|
@@ -145,7 +147,7 @@ async def run_asyncio_coroutine(coro_obj):
|
|
|
|
|
|
@check_session_impl(ThreadBasedSession)
|
|
|
def register_thread(thread: threading.Thread):
|
|
|
- """注册线程,以便在线程内调用 PyWebIO 交互函数。仅能在基于线程的会话上下文中调用
|
|
|
+ """注册线程,以便在线程内调用 PyWebIO 交互函数。仅能在默认的基于线程的会话上下文中调用。
|
|
|
|
|
|
:param threading.Thread thread: 线程对象
|
|
|
"""
|