Skip to main content

Pub sub implementation

Project description

Event Channel

Donate  Pypi Downloads Downloads Travis ci Issues Open issues codecov.io

Another library with a pub/sub implementation. You can subscribe functions to a certain topic (aka event). When a message is sent through this event callback functions subscribed will be executed.

from event_channel import EventChannel

mychannel = EventChannel() # You can also import channel, is an instance already created

def callback(x):
    x = x + 1
    print(x)

mychannel.subscribe("myevent", callback)

mychannel.publish("myevent", 345)

channel.unsubscribe("myevent", callback)
from event_channel.threaded_event_channel import ThreadedEventChannel

mychannel =  ThreadedEventChannel(blocking=False) # You can also import non_blocking_channel, is an instance already created

def callback(x):
    x = x + 1
    print(x)

mychannel.subscribe("myevent", callback)
mychannel.subscribe("myevent", callback2)

threads = mychannel.publish("myevent", 345)

# Wait thread finish
for thread in threads:
    thread.join()
from event_channel.threaded_event_channel import ThreadedEventChannel

my_blocking_channel = ThreadedEventChannel() # You can also import channel, is an instance already created

def callback(x):
    x = x + 1
    print(x)

mychannel.subscribe("myevent", callback)
mychannel.subscribe("myevent", callback2)

threads = mychannel.publish("myevent", 345)
#at this point all threads are finished

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

event_channel-0.4.3.tar.gz (14.9 kB view hashes)

Uploaded Source

Built Distribution

event_channel-0.4.3-py3-none-any.whl (15.6 kB view hashes)

Uploaded Python 3

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page