Spring MVC como obter o progresso de executar a tarefa assíncrona

Gostaria de iniciar uma tarefa assíncrona a partir do controlador, como no seguinte sniplet de código de documentos do Spring.

import org.springframework.core.task.TaskExecutor; 

public class TaskExecutorExample { 

  private class MessagePrinterTask implements Runnable { 

    private int cn; 

    public MessagePrinterTask() { 

    } 

    public void run() { 
//dummy code 
for (int i = 0; i < 10; i++) { 
cn = i; 
} 
} 

} 

private TaskExecutor taskExecutor; 

public TaskExecutorExample(TaskExecutor taskExecutor) { 
    this.taskExecutor = taskExecutor; 
  } 

  public void printMessages() { 

      taskExecutor.execute(new MessagePrinterTask()); 

  } 
} 

depois no pedido annother (no caso em que a tarefa está em execução) eu preciso verificar o progresso da tarefa. Basicamente, obtenha o valor de cn.

Qual seria a melhor abordagem no Spring MVC? Como evitar problemas de sincronização?

obrigado

Pepa Procházka

questionAnswers(3)

yourAnswerToTheQuestion