6
votes

Téléchargement de MultiPart S3: Comment puis-je annuler une?

J'ai besoin d'annuler un téléchargement en cours initié avec

fileTransferUtility = new TransferUtility(/*...*/);
var uploadRequest = new TransferUtilityUploadRequest() /* config parameters... */
fileTransferUtility.BeginUpload(uploadRequest, new AsyncCallback(uploadComplete), file);


3 Réponses :


1
votes

1 commentaires

Merci, mais malheureusement, cela n'arrêtera pas le fil de téléchargement actuellement. De plus, la transfertiité effectuera un téléchargement multipart uniquement s'il dépasse une certaine taille, sinon effectuera un téléchargement standard, qui n'est pas affecté par cet appel.



6
votes

J'ai reçu un Réponse officielle de Amazon à ce sujet. Voici leur réponse: xxx

au lieu d'utiliser begessupload / appels endupload , vous devez utiliser un télécharger Appeler enveloppé dans un fil et pleurez la référence à ce fil.

Si l'utilisateur doit annuler, appelez avortement () sur le thread, qui annulera le téléchargement. Bien sûr, vous devez nettoyer des fichiers partiellement téléchargés (ils facturent leur facture!).

Comme je soupçonné: très simple et intuitif, mais pas si facile à trouver :)


1 commentaires

Je devais ajouter un appel à thread.start () avant que cela ne fonctionne pour moi.



0
votes

Enractiez le téléchargement dans un fil de fil, mais au moins pour moi, il faut beaucoup de temps, si le fichier est important pour abandonner le fil. Toute personne le voit aussi?


0 commentaires