【发布时间】:2021-11-17 14:45:15
【问题描述】:
我遇到了一个场景,在需要执行 1 个任务并将响应发送回调用者的情况下,需要同步调用一个方法。如果要执行多个任务,则需要异步调用相同的方法。如何在 Java 中实现这一点?
public class Validator{
@Async
public String Validate(List<DataRecord> records){
// Runs validation
}
public String processRecords(List<DataRecord> records){
if(records.size <=5 ){
// call method validate synchronously and return response
return validate(records)
}
else{
// Call method validate asynchronously
validate(records)
return "Records are being validated please visit the page after some time";
}
}
}
【问题讨论】:
-
您的问题缺少重要信息。请继续使用更具体的示例对其进行更新和/或可能分享您已经完成的工作,以便有人能够帮助您。
-
创建两个方法,同步和异步,并调用包含两个方法的公共逻辑的公共方法。然后根据您的条件,调用任何同步或异步方法。
-
@Async注解是否来自Spring?
标签: java multithreading asynchronous