跳转到主要内容

简洁的发布/订阅实用工具

项目描述

一个简洁的发布/订阅实用工具模块。它支持自由形式的信号名称和一种更严格的风格,其中信号首先声明。您也可以混合使用。

https://secure.travis-ci.org/keis/smoke.png?branch=master https://coveralls.io/repos/keis/smoke/badge.png?branch=master

用法

import smoke

class MyCls(smoke.Broker):
    appears = smoke.signal('appears')
    leaves = smoke.signal('leaves')

def say_hello(what):
    print("hello %s" % (what,))

def say_goodbye(what):
    print("good bye %s" % (what,))

# Using broker
o = MyCls()
o.subscribe("appears", say_hello)
o.publish("appears", what='world')

# Using declared signals
o = MyCls()
o.leaves.subscribe(say_goodbye)
o.leaves.publish(what='world')

# Mixing
o = MyCls()
o.subscribe("appears", say_hello)
o.appears.publish()

项目详情


下载文件

下载适用于您的平台的文件。如果您不确定选择哪个,请了解更多关于安装包的信息。

源分发

smoke-0.2.0.tar.gz (4.6 kB 查看哈希)

上传时间:

支持者:

AWS AWS 云计算和安全赞助商 Datadog Datadog 监控 Fastly Fastly CDN Google Google 下载分析 Microsoft Microsoft PSF 赞助商 Pingdom Pingdom 监控 Sentry Sentry 错误记录 StatusPage StatusPage 状态页