@txh3157
I believe Blob storage might be suitable for your use case. According to the reference of Azure REST API Get Blob for Storage Service, there is a parameter x-ms-range of request headers for downloading part of a Blob.
x-ms-range Optional. Return only the bytes of the blob in the specified range. If both Range and x-ms-range are specified, the service uses the value of x-ms-range. If neither are specified, the entire blob contents are returned. See Specifying the Range Header for Blob Service Operations for more information.
So you can resume the downloading process by pass the x-ms-range value with bytes=<the byte size of your downloaded>- to continue to download the full tail of a blob in a working thread.
Hope this helps! Please let us know if you have further questions or issues.
--------------
Please don’t forget to "Accept the answer" and “up-vote” wherever the information provided helps you, this can be beneficial to other community members.