Quais são os benefícios de usar em Schedulers.newThread()
relação Schedulers.io()
à Retrofit
solicitação de rede. Já vi muitos exemplos que usam io()
, mas quero entender por quê.
Situação de exemplo:
observable.onErrorResumeNext(refreshTokenAndRetry(observable))
.subscribeOn(Schedulers.newThread())
.observeOn(AndroidSchedulers.mainThread())...
vs
observable.onErrorResumeNext(refreshTokenAndRetry(observable))
.subscribeOn(Schedulers.io())
.observeOn(AndroidSchedulers.mainThread())...
Uma das razões que vi é -
newThread()
cria um novo thread para cada unidade de trabalho. io()
usará um pool de threads
Mas qual é a influência desse argumento no aplicativo? E que outros aspectos existem?