Sobes.tech
Junior — Middle

Consegues enumerar os tipos de flux de execução utilizados no RxJava?

sobes.tech IA

Resposta da IA

No RxJava, são utilizados diferentes tipos de fluxos (Schedulers) para gerir em qual thread as operações são executadas:

  • Schedulers.io() — para operações de entrada/saída (requisições de rede, trabalho com ficheiros). Utiliza um pool de threads que pode ser expandido conforme necessário.

  • Schedulers.computation() — para tarefas computacionais, utiliza um pool fixo de threads, igual ao número de núcleos do processador.

  • Schedulers.newThread() — cria uma nova thread para cada tarefa.

  • Schedulers.single() — utiliza uma única thread para executar tarefas de forma sequencial.

  • AndroidSchedulers.mainThread() (no Android) — para executar operações na thread principal (UI).

Exemplo de uso:

Observable.just("data")
    .subscribeOn(Schedulers.io())
    .observeOn(AndroidSchedulers.mainThread())
    .subscribe(data -> {
        // processamento na thread UI
    });