mirror of
https://github.com/aniyomiorg/aniyomi.git
synced 2024-11-28 09:15:12 +03:00
Download from up to 5 different sources concurrently (closes #2534)
This commit is contained in:
parent
150132f4dd
commit
c9035b5df9
1 changed files with 10 additions and 1 deletions
|
@ -181,7 +181,16 @@ class Downloader(
|
||||||
subscriptions.clear()
|
subscriptions.clear()
|
||||||
|
|
||||||
subscriptions += downloadsRelay.concatMapIterable { it }
|
subscriptions += downloadsRelay.concatMapIterable { it }
|
||||||
.concatMap { downloadChapter(it).subscribeOn(Schedulers.io()) }
|
// Concurrently download from 5 different sources
|
||||||
|
.groupBy { it.source }
|
||||||
|
.flatMap(
|
||||||
|
{ bySource ->
|
||||||
|
bySource.concatMap { download ->
|
||||||
|
downloadChapter(download).subscribeOn(Schedulers.io())
|
||||||
|
}
|
||||||
|
},
|
||||||
|
5
|
||||||
|
)
|
||||||
.onBackpressureBuffer()
|
.onBackpressureBuffer()
|
||||||
.observeOn(AndroidSchedulers.mainThread())
|
.observeOn(AndroidSchedulers.mainThread())
|
||||||
.subscribe(
|
.subscribe(
|
||||||
|
|
Loading…
Reference in a new issue