异步亚马逊冰川下载

时间:2014-03-17 10:24:38

标签: c# amazon-web-services amazon-glacier

我想使用线程池异步下载多个冰川文件。我当前的方法使用High Level API进行Glacier下载,但是每个线程都会等待下载方法,直到下载作业完成。以下是所有踏板等待的代码

            ArchiveTransferManager manager = new     ArchiveTransferManager(Amazon.RegionEndpoint.USEast1);
            DownloadOptions options = new DownloadOptions();
            manager.Download(vaultName, archiveId, downloadFilePath, options); 

有人可以建议我如何异步下载存档,以便我的线程在获得作业ID后回来,并且在下载完成时会引发一些事件。

此致 Haseena

1 个答案:

答案 0 :(得分:1)

如果亚马逊不提供异步API,您需要自己实施。每个下载都有一个线程,下载完成后让下载线程通知主线程。

TPL可以帮助您自动执行此操作 - 创建一个下载文件的任务,并在其上await