This pull request introduces the initial implementation of Parallel Download mechanism, which is using multiple sessions at the same time. This method is quite similar to what IDM used, which may help to improves the download speed quite a bit for user who doesn't have a good network performance while downloading using single session connection.
Major Changes
The first implementation of PartialHttpClient class for handling download session and DownloadPartialAdapter class for resumable-download adapter for PartialHttpClient.
Using Events based download status instead of looping-delay based download status for the "Getter".
Fix IOException exception while recreating directory on first game download.
Minor Changes
Bump-up (Update) version some of NuGet packages.
Uncompleted
Language translation. The untranslated sections are commented with // TODO: Add to Language Dictionary
After Changes (using Parallel Download method - Multiple Sessions)
Download Speed (after 5 Mins): 72 Mb/s (9 MB/s)
Note [CANCELLED]
To use this method, you have to enable Use Parallel Download in the Options button or just simply pressing Ctrl+Shift+D on your keyboard.
As per latest changes, This feature will be used by default unless you need to use Legacy Download method, you have to switch UseLegacyDownload in registry to 1.
Based on our conversation in Discord, We will make this feature to be used by default.
It will keep Legacy Download method but you need to switch the UseLegacyDownload in registry first to 1 to use it.
Pull Request Overview
This pull request introduces the initial implementation of Parallel Download mechanism, which is using multiple sessions at the same time. This method is quite similar to what IDM used, which may help to improves the download speed quite a bit for user who doesn't have a good network performance while downloading using single session connection.
Major Changes
PartialHttpClient
class for handling download session andDownloadPartialAdapter
class for resumable-download adapter forPartialHttpClient
.Events
based download status instead of looping-delay based download status for the "Getter".IOException
exception while recreating directory on first game download.Minor Changes
Uncompleted
// TODO: Add to Language Dictionary
Benchmark
Specifications
Before Changes (using legacy download method - Single Session)
Download Speed (after 5 Mins): 23.44 Mb/s (2.93 MB/s)
After Changes (using Parallel Download method - Multiple Sessions)
Download Speed (after 5 Mins): 72 Mb/s (9 MB/s)
Note[CANCELLED]To use this method, you have to enableUse Parallel Download
in theOptions
button or just simply pressingCtrl+Shift+D
on your keyboard.As per latest changes, This feature will be used by default unless you need to use Legacy Download method, you have to switch
UseLegacyDownload
in registry to1
.