JobMonitor

De BIS Wiki
Revisão de 21h46min de 13 de outubro de 2020 por Rodrigogml (discussão | contribs) (Criou página com 'O JobMonitor é o serviço do BISFW que permite que tarefas sejam executar em uma Thread paralela para que a thread principal não fique bloqueada esperando. Esse recurso é e...')
(dif) ← Edição anterior | Revisão atual (dif) | Versão posterior → (dif)
Ir para navegação Ir para pesquisar

O JobMonitor é o serviço do BISFW que permite que tarefas sejam executar em uma Thread paralela para que a thread principal não fique bloqueada esperando. Esse recurso é extremamente útil para tarefas demoradas, uma vez que permite retornar status sobre a execução da tarefa enquanto ela acontece, mesmo que seja pela interface WEB.

Funcionamento

Para colocar uma tarefa em background basta implementar a classe Job e iniciar a execução dentro do método runJob().

Exemplo Tarefa em Execução em Background
      Job job = new Job("Título da Tarefa") { //O título da tarefa é colocado no título da thread, o que ajuda no DEV.
        @Override
        public Object runJob(Job job, JobStatus jobStatus) throws Throwable {
          //Código para execução da tarefa...
        }

        @Override
        public void jobFinished(Job job, JobStatus jobStatus) {
          // Quando a tarefa é finalizada, o serviço JobMonitor chama este método para notificar
        }
      };

Basta