Coverage for /pythoncovmergedfiles/medio/medio/usr/local/lib/python3.11/site-packages/anyio/_core/_signals.py: 86%
Shortcuts on this page
r m x toggle line displays
j k next/prev highlighted chunk
0 (zero) top of page
1 (one) first highlighted chunk
Shortcuts on this page
r m x toggle line displays
j k next/prev highlighted chunk
0 (zero) top of page
1 (one) first highlighted chunk
1from __future__ import annotations
3from collections.abc import AsyncIterator
4from contextlib import AbstractContextManager
5from signal import Signals
7from ._eventloop import get_async_backend
10def open_signal_receiver(
11 *signals: Signals,
12) -> AbstractContextManager[AsyncIterator[Signals]]:
13 """
14 Start receiving operating system signals.
16 :param signals: signals to receive (e.g. ``signal.SIGINT``)
17 :return: an asynchronous context manager for an asynchronous iterator which yields
18 signal numbers
20 .. warning:: Windows does not support signals natively so it is best to avoid
21 relying on this in cross-platform applications.
23 .. warning:: On asyncio, this permanently replaces any previous signal handler for
24 the given signals, as set via :meth:`~asyncio.loop.add_signal_handler`.
26 """
27 return get_async_backend().open_signal_receiver(*signals)