#java #asynchronous #executorservice
Вопрос:
Я наткнулся на какой-то устаревший код и нашел это выражение в связи с некоторой асинхронной обработкой базы данных:
ExecutorService SERVICE = Executors.newCachedThreadPool();
SERVICE.execute(() - > {
try {
SERVICE.execute(new Runnable() {
@Override
public void run() {
// do stuff
}
});
} catch (Exception e) {
e.printStackTrace();
}
});
Мой вопрос в том, есть ли какая-то причина для того, чтобы звонить execute()
дважды по ExecutorService
телефону ? Не было бы проще просто убежать:
try {
SERVICE.execute(new Runnable() {
@Override
public void run() {
// do stuff
}
});
} catch (Exception e) {
e.printStackTrace();
}
Комментарии:
1. нет, это совершенно бессмысленно.