diff --git a/src/anyio/from_thread.py b/src/anyio/from_thread.py index 26d4a2623..b5a8857e7 100644 --- a/src/anyio/from_thread.py +++ b/src/anyio/from_thread.py @@ -9,6 +9,7 @@ from warnings import warn from ._core import _eventloop +from ._core._compat import DeprecatedAwaitable from ._core._eventloop import get_asynclib, get_cancelled_exc_class, threadlocals from ._core._synchronization import Event from ._core._tasks import CancelScope, create_task_group @@ -143,7 +144,7 @@ async def sleep_until_stopped(self) -> None: """Sleep until :meth:`stop` is called.""" await self._stop_event.wait() - async def stop(self, cancel_remaining: bool = False) -> None: + def stop(self, cancel_remaining: bool = False) -> DeprecatedAwaitable: """ Signal the portal to shut down. @@ -159,6 +160,8 @@ async def stop(self, cancel_remaining: bool = False) -> None: if cancel_remaining: self._task_group.cancel_scope.cancel() + return DeprecatedAwaitable(self.stop) + async def _call_func(self, func: Callable, args: tuple, kwargs: Dict[str, Any], future: Future) -> None: def callback(f: Future) -> None: