我遇到的情况是我在gem上调用一个异步处理它的方法。我希望能够在调用方法的线程上继续执行之前等待回调。
gem.async_method(args) do |result|
# the callback
end
# wait until callback is called and then continue execution
puts result # somehow have access to the result from the callback
答案 0 :(得分:0)
http_sync
我认为您只是在http_sync
,publish
'等PubNub时查找subscribe
参数。 https://www.pubnub.com/docs/ruby/api-reference-sdk-v4#publish_args
pubnub.publish(
channel: 'my_channel',
message: { text: 'Hi!' },
http_sync: true
) do |envelope|
puts envelope.status
end
答案 1 :(得分:0)
我设法最终找到了解决方案。我使用的宝石返回{{1}}。如果你调用{{1}},它将阻止执行,直到收到值。