AWS S3 下载暂停方法无法正常工作
AWS S3 Download Pause Method Does Not Work Properly
我正在尝试为 Amazon S3 SDK 实施暂停和恢复机制。
我正在使用 TransferManager 开始下载并像 link
中给定的示例一样继续下载
downloadInstance.pause()
方法有问题。
它不会像 uploadInstance.tryPause(true)
那样暂停下载
我已将 ProgressListener
附加到 downloadInstance
,如下所示:
TransferProgress progress = myDownload.getProgress();
我试过像下面这样暂停进度:
PersistableDownload persistableDownload = myDownload.pause();
在这一点之后,我检查了 progress
个实例,并看到调试中的进度发生了变化。所以我可以说它没有按预期暂停下载操作。
要从 persistableDownload
实例恢复下载,我尝试了以下操作:
Download resumedDownload = transferManager.resumeDownload(persistableDownload);
我还将不同的 TransferProgress
实例附加到 resumeDownload
实例,我发现它是从头开始而不是继续。
我找到了问题的根本原因。 S3 默认允许并行下载,如果分块并行下载,则无法继续下载。
我正在尝试为 Amazon S3 SDK 实施暂停和恢复机制。
我正在使用 TransferManager 开始下载并像 link
中给定的示例一样继续下载downloadInstance.pause()
方法有问题。
它不会像 uploadInstance.tryPause(true)
我已将 ProgressListener
附加到 downloadInstance
,如下所示:
TransferProgress progress = myDownload.getProgress();
我试过像下面这样暂停进度:
PersistableDownload persistableDownload = myDownload.pause();
在这一点之后,我检查了 progress
个实例,并看到调试中的进度发生了变化。所以我可以说它没有按预期暂停下载操作。
要从 persistableDownload
实例恢复下载,我尝试了以下操作:
Download resumedDownload = transferManager.resumeDownload(persistableDownload);
我还将不同的 TransferProgress
实例附加到 resumeDownload
实例,我发现它是从头开始而不是继续。
我找到了问题的根本原因。 S3 默认允许并行下载,如果分块并行下载,则无法继续下载。