Spring MVC, wie man den Fortschritt der Ausführung einer asynchronen Aufgabe erhält
Ich möchte eine asynchrone Aufgabe aus dem Controller heraus starten, wie im folgenden Code-Sniplet aus Spring-Dokumenten.
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());
}
}
danach muss ich in einer anderen Anfrage (falls diese Aufgabe ausgeführt wird) den Fortschritt der Aufgabe überprüfen. Grundsätzlich erhalten Sie den Wert von cn.
Was wäre der beste Ansatz in Spring MVC, um Synchronisationsprobleme zu vermeiden?
Vielen Dank
Pepa Procházka