该承诺 gem 试图成为和定义的JavaScript Promise的Ruby版本。安装此gem,将以下行添加到应用程序的Gemfile中:
gem 'a-ruby-promise'
然后执行:
$ bundle
或者自己安装:
$ gem install a-ruby-promise
用法
创建承诺:
Promise.new do
begin
# 执行一些计算
value = 42 # 计算结果
fulfill(value)
rescue Exception => e
reject(e)
end
end
创建一个新的承诺,如果它在超时期限之前没有完成,它将被拒绝:
def timeout_promise(promise, timeout)
# 代码实现
end
暂无评论