Daten vom @Async-Funktionsaufruf zurückholen
Posted: 20 Jan 2025, 15:46
Hallo, ich bin neu im Multithreading in Java. Kann mir bitte jemand dabei helfen:
Mein Service:
SpringbootApplication:
Asynchrone Konfiguration:
Verantwortlicher:
Wenn ich auf diese Anfrage vom Postboten klicke, wird in der Antwort kein Text angezeigt. Ich verstehe, dass mein Aufruf asynchron erfolgt und die Antwort zurückkommt, noch bevor meine Methode aufgerufen wird. Gibt es eine Möglichkeit, diese Antwort anzuzeigen, indem ich einige Einstellungen in meiner Postman- oder Spring-Boot-Anwendung ändere?
Mein Service:
Code: Select all
@Async
public List doSomething(int a){
//Do something
return list;
}
Code: Select all
@SpringBootApplication
@EnableAsync
public class Test {
public static void main(String[] args) {
SpringApplication.run(Test.class, args);
}
}
Code: Select all
@Configuration
@EnableAsync
public class AsyncConfig {
@Bean(name ="taskExecutor")
public Executor taskExecutor(){
ThreadPoolTaskExecutor executor=new ThreadPoolTaskExecutor();
executor.setCorePoolSize(2);
executor.setMaxPoolSize(2);
executor.setQueueCapacity(100);
executor.setThreadNamePrefix("userThread-");
executor.initialize();
return executor;
}
}
Code: Select all
@RestController
public class Controller{
@Autowired
private Service service;
@GetMapping("test")
public List getAll(){
return service.doSomething(1);
}
}