Время ожидания не предоставляется аннотацией @Async
, так как время ожидания должно определяться вызывающей функцией, а не самой функцией.
Я предполагаю, что вы ссылаетесь на время ожидания для @Async
-аннотированного метода, который возвращает результат. Такие методы должны возвращать экземпляр Future
, а метод get()
для Future
используется для указания времени ожидания.
например,
@Async
public Future<String> doSomething() {
return new AsyncResult<String>("test");
}
а затем
Future<String> futureResult = obj.doSomething(); // spring makes this an async call
String result = futureResult.get(1, TimeUnit.SECOND);