Compare commits
10
Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
b434b97e70 | ||
|
|
df0e789f56 | ||
|
|
b48ac3df38 | ||
|
|
6c50db2ee7 | ||
|
|
217dce3546 | ||
|
|
338c6bd600 | ||
|
|
1e1e031a56 | ||
|
|
9a314f9bd3 | ||
|
|
2dcad41ba1 | ||
|
|
c8c8c6052a |
@@ -29,9 +29,22 @@ class KayaMixin(ABC):
|
||||
pass
|
||||
|
||||
def setup(self, loop: AbstractEventLoop) -> None:
|
||||
"""Called on lifespan startup (default: no-op)."""
|
||||
"""Called on lifespan startup (default: no-op).
|
||||
|
||||
Under RSGI (granian) the loop is NOT yet running when this is
|
||||
called: schedule work on the passed ``loop`` (e.g.
|
||||
``loop.create_task``) instead of calling
|
||||
``asyncio.get_running_loop()``, which raises ``RuntimeError``
|
||||
there. Under ASGI the lifespan runs inside a coroutine, so a
|
||||
running loop happens to be available — do not rely on that.
|
||||
"""
|
||||
pass
|
||||
|
||||
def shutdown(self, loop: AbstractEventLoop) -> None:
|
||||
"""Called on lifespan shutdown (default: no-op)."""
|
||||
"""Called on lifespan shutdown (default: no-op).
|
||||
|
||||
As with :meth:`setup`, use the passed ``loop``; it may already be
|
||||
stopped under RSGI, so ``asyncio.get_running_loop()`` is not
|
||||
reliable here either.
|
||||
"""
|
||||
pass
|
||||
|
||||
Reference in New Issue
Block a user