【发布时间】:2016-05-16 09:10:10
【问题描述】:
所以我想知道在使用 SFML 的 HTTP 类/一般使用 HTTP 时获取下载进度的好方法是什么。我认为能够做到这一点的唯一方法是在一个单独的线程中使用大量的远程 GET 请求,但是那个 ofc 使得所有请求和所有请求的下载时间都更长。
有什么想法吗?
【问题讨论】:
标签: c++ multithreading networking sfml
所以我想知道在使用 SFML 的 HTTP 类/一般使用 HTTP 时获取下载进度的好方法是什么。我认为能够做到这一点的唯一方法是在一个单独的线程中使用大量的远程 GET 请求,但是那个 ofc 使得所有请求和所有请求的下载时间都更长。
有什么想法吗?
【问题讨论】:
标签: c++ multithreading networking sfml
你不能。如果您需要进度信息,您应该自己实现(不推荐)或使用其他库进行联网。
来自sf::Http::sendRequest的文档:
警告:此函数等待服务器响应,可能不会立即返回;如果您不想阻塞应用程序,请使用线程,或者使用超时来限制等待时间。
换句话说,它是一个阻塞方法,只在超时或完成(成功或错误)时返回。
也许看看libcurl、cpp-netlib 或其他一些库。
【讨论】: