Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/jek/blinker
A fast Python in-process signal/event dispatching system.
https://github.com/jek/blinker
blinker python signals
Last synced: 4 months ago
JSON representation
A fast Python in-process signal/event dispatching system.
- Host: GitHub
- URL: https://github.com/jek/blinker
- Owner: pallets-eco
- License: mit
- Created: 2013-07-03T10:32:39.000Z (over 11 years ago)
- Default Branch: main
- Last Pushed: 2024-05-21T14:12:26.000Z (7 months ago)
- Last Synced: 2024-05-30T04:14:11.993Z (7 months ago)
- Topics: blinker, python, signals
- Language: Python
- Homepage: https://blinker.readthedocs.io
- Size: 304 KB
- Stars: 1,686
- Watchers: 38
- Forks: 178
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- Changelog: CHANGES.rst
- License: LICENSE.txt
Awesome Lists containing this project
- starred-awesome - blinker - A fast Python in-process signal/event dispatching system. (Python)
README
# Blinker
Blinker provides a fast dispatching system that allows any number of
interested parties to subscribe to events, or "signals".## Pallets Community Ecosystem
> [!IMPORTANT]\
> This project is part of the Pallets Community Ecosystem. Pallets is the open
> source organization that maintains Flask; Pallets-Eco enables community
> maintenance of related projects. If you are interested in helping maintain
> this project, please reach out on [the Pallets Discord server][discord].
>
> [discord]: https://discord.gg/pallets## Example
Signal receivers can subscribe to specific senders or receive signals
sent by any sender.```pycon
>>> from blinker import signal
>>> started = signal('round-started')
>>> def each(round):
... print(f"Round {round}")
...
>>> started.connect(each)>>> def round_two(round):
... print("This is round two.")
...
>>> started.connect(round_two, sender=2)>>> for round in range(1, 4):
... started.send(round)
...
Round 1!
Round 2!
This is round two.
Round 3!
```