2016-12-12 2 views

ответ

1

После подачи Callable на ваш ThreadPoolTaskExecutor вы должны получить Future. И на этом Future вы можете вызвать функцию get(long timeout, TimeUnit unit) с TimeUnit, что является таймаутом, максимальное время, в течение которого программа будет ждать, пока либо будущее не пойдет, либо не переместится, выбросив TimeoutException.

т.е. (неподтвержденные псевдокод)

Future myFuture = threadPoolTaskExecutor.submit(myCallable); 
try { 
    myResult = myFuture.get(5l,TimeUnit.SECONDS); 
} catch(TimeoutException e) { 
    // Timeout-Related stuff here 
} 
Смежные вопросы