我有一个典型的S3上传示例,效果很好。我决定对重试次数设置一个限制,因为有时由于网络问题,延迟会导致问题。我查看了AWS SDK,显然我可以为客户端配置设置MaxErrorRetry选项。但是,这似乎不是C ++中的一个选项。相反,我找到了RetryStrategy函数,但我不确定如何使用它。我需要做的就是为重试次数设置一个数字而不是默认值。有什么建议吗?
由于
答案 0 :(得分:1)
long maxRetry = 2;
long scope = 2;
std::shared_ptr<Aws::Client::DefaultRetryStrategy> retryStrategy = std::make_shared<Aws::Client::DefaultRetryStrategy>(maxRetry,scope); // strategy with custom max retries
Aws::Client::ClientConfiguration clientConfig;
clientConfig.retryStrategy = retryStrategy; // assign it to Client configuration
Aws::S3::S3Client s3Client(clientConfig); // create S3 client with your configuration
答案 1 :(得分:0)
找到答案:
std::shared_ptr<Aws::Client::RetryStrategy> retry; // initialise retry strategy
retry.reset(new Aws::Client::DefaultRetryStrategy(num_of_retries, scope));//override default by creating an instance of DefaultRetryStrategy
client_config.retryStrategy = retry; // assign to client_config