gpt4 book ai didi

java - AWS Java SDK - 将 ProgressListener 与 TransferManager 结合使用

转载 作者:行者123 更新时间:2023-11-30 01:52:28 25 4
gpt4 key购买 nike

我正在查看 AWS SDK 文档中提供的 TransferManager 的使用示例,特别是对于以下代码:

TransferManager tx = new TransferManager(
               credentialProviderChain.getCredentials());
Upload myUpload = tx.upload(myBucket, myFile.getName(), myFile);
 // Transfers also allow you to set a <code>ProgressListener</code> to receive
// asynchronous notifications about your transfer's progress.
myUpload.addProgressListener(myProgressListener);

我想知道我们这里是否没有竞争条件的情况。 AFAIU TransferManager 异步工作,它可能会在创建 Upload 对象之后立即开始上传文件,甚至在我们添加监听器之前,因此如果我们使用文档中,我们似乎可能不会收到所有通知。我简单地查看了 addProgressListener ,但我没有看到在附加新监听器时会重播过去的事件。我错了吗?我错过了什么吗?

最佳答案

如果您需要获取所有事件,我想这可以使用不同的 upload 来实现接受 ProgressListener 作为参数的方法。当然,使用此方法需要将您的存储桶名称、 key 和文件封装到 PutObjectRequest 实例中。

关于java - AWS Java SDK - 将 ProgressListener 与 TransferManager 结合使用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55620765/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com