Blinker provides a fast dispatching system that allows any number of interested parties to subscribe to events, or "signals".
Signal receivers can subscribe to specific senders or receive signals sent by any sender.
>>> from blinker import Signal >>> signal = Signal('round_started') >>> def each(round): ... print "Round %s!" % round ... >>> signal.connect(each) >>> def round_two(round): ... print "This is round two." ... >>> signal.connect(round_two, sender=2)>>> for round in range(1, 4): ... signal.send(round) ... Round 1! Round 2! This is round two. Round 3!