Retrofit com Rxjava Schedulers.newThread () vs Schedulers.io ()

Quais são os benefícios de usarSchedulers.newThread() vsSchedulers.io() noRetrofit solicitação de rede. Eu já vi muitos exemplos que usamio(), mas quero entender o porquê.

Exemplo de situação:

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 eu 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?

questionAnswers(1)

yourAnswerToTheQuestion