0

我已经开始使用“cpp rest sdk”。我理解的关键点是所有请求和响应都是使用 PPL 的手段异步的。这很好地提高了应用程序的可扩展性和性能。

我的问题是天气是以“同步”方式请求和等待响应的任何方式。

我发现以下网页似乎工作正常,并声称以同步方式进行调用。是这样吗?

调用是否task::get()保证函数在准备好读取响应时返回?

4

1 回答 1

1

异步编程的主要思想是将您想要顺序执行的所有部分链接起来。如果您希望程序等到序列完成,您可以使用结束链.wait()

client.request(web::http::methods::GET, U("/foo.html"))
      .then(/*some lambda*/)
      .then(/*some lambda*/)   //and so on
      .wait();                 //stop here until the chain is executed

同样,您也可以使用get()which 也调用wait()但进一步返回任务的结果。

于 2017-07-18T21:13:23.720 回答