0

做了很多研究,但找不到答案。我有一个应用程序,它是通过创建从 QObject 派生的实例构建的,我将这些实例移动到不同的线程。在这些“线程”中,我有一个 QNetworkAccessManager,我在其中请求天蓝色。我现在的问题是我有一些重试逻辑正在快速发生。例如,如果容器不存在,则需要创建它以重试请求(放置 blob)。问题是如果在容器创建后 put blob 请求发生得太快,它将无法上传任何内容。另外,我想增加重发之间的时间,这样它们就不会很快发生在彼此之后。强制线程从自身内部休眠的最佳方法是什么?

4

2 回答 2

1

我可能最终会使用 QTimer 和信号/插槽的某种组合。例如:

// Slot
void retry() { ... }

...

// Execute retry code in 1 second:
QTimer::singleShot( 1000, this, SLOT(retry()) );
于 2012-04-16T04:18:32.563 回答
1

采用QThread::wait()

于 2012-04-16T08:24:49.980 回答