Effect/Twisted集成
项目描述
txEffect
txEffect是一个小型库,用于集成Twisted和Effect,主要围绕Deferred
Effect是一个库,可以帮助你通过隔离代码中的效果(即I/O或状态操作)来编写纯函数式代码。文档可在https://effect.readthedocs.org/找到。
示例
使用txeffect.perform执行Effect以获取Deferred。
from txeffect import perform
d = perform(my_dispatcher, some_effect)
d.addCallback(log.msg)
使用txeffect.deferred_performer实现返回Deferred的intent执行者。
from twisted.internet.defer import succeed
from txeffect import deferred_performer
@deferred_performer
def perform_foo(dispatcher, intent):
return succeed('hello, world')
使用txeffect.make_twisted_dispatcher通过异步实现执行标准的Delay和parallel效果。
from twisted.internet import reactor
from txeffect import make_twisted_dispatcher
dispatcher = make_twisted_dispatcher(reactor)
p_effs = parallel([Effect(Delay(5), Effect(Delay(3), Effect(Delay(1))))])
perform(dispatcher, p_effs).addCallback(
lambda: print("5 seconds have passed!"))
工作示例可在effect-examples GitHub存储库中找到。
感谢
感谢Rackspace允许我从事此项目,并拥有一个优秀的 开源员工贡献政策
IRC
在irc.freenode.net上有一个#python-effect IRC频道。
许可证
txEffect受MIT许可证许可
版权所有 (C) 2014 Christopher Armstrong
特此授予任何获得本软件及其相关文档文件(“软件”)副本的任何人免费处理软件的权利,包括但不限于使用、复制、修改、合并、发布、分发、再许可和/或销售软件副本,并允许向提供软件的人员这样做,但受以下条件的约束
上述版权声明和本许可声明应包含在软件的所有副本或主要部分中。
软件按“原样”提供,不提供任何形式的保证,无论是明示的还是隐含的,包括但不限于适销性、适用于特定目的和非侵权性。在任何情况下,作者或版权所有者均不对任何索赔、损害或其他责任负责,无论基于合同、侵权或其他原因,是否与软件有关,或与使用或以其他方式处理软件有关。
项目详情
下载文件
下载适用于您平台的文件。如果您不确定选择哪个,请了解更多关于安装包的信息。
源代码分发
构建分发
txeffect-1.0.0.tar.gz的哈希值
算法 | 哈希摘要 | |
---|---|---|
SHA256 | 827896e03956c8307cd7ffe6d8c45d6f99ce4d869385ae55cf40186d40a73f03 |
|
MD5 | 30adb46f960b0b532bf93cfdef261219 |
|
BLAKE2b-256 | 21859b089f7870ab6e7293b62ac16bacefbe2dcb1a608fbcac634c71d2f62bc5 |
txeffect-1.0.0-py2.py3-none-any.whl的哈希值
算法 | 哈希摘要 | |
---|---|---|
SHA256 | bd6457a946b2e44af91ae36e76d29e502c9e3f06327e218c85c9d259affbcc18 |
|
MD5 | accff83c414dbf8f8105f647ef2d7b52 |
|
BLAKE2b-256 | 070c29ffce99d8103eaed87e4ca01e767bcb1fd5956571792f4c8b1e4e3a1b2a |