Как бороться с лямбда-выражением в потоке Executor/FutureTask? ⇐ JAVA
Как бороться с лямбда-выражением в потоке Executor/FutureTask?
Вот мой класс задач:
публичный интерфейс TaskCallback { void onTaskCompleted (логический результат); void onTaskFailed (Исключение е); } общественный класс AsyncTaskExample { частный окончательный исполнитель-исполнитель = Executors.newSingleThreadExecutor(); public void ExecuteAsyncTask (обратный вызов TaskCallback) { FutureTask TaskSyncFiles = new FutureTask(() -> { // задача вернуть истину; }); исполнитель.execute(taskSyncFiles); исполнитель.execute(() -> { пытаться { Логический результат = TaskSyncFiles.get(); callback.onTaskCompleted(результат); } catch (InterruptedException | ExecutionException e) { callback.onTaskFailed(e); } }); } } Я бы хотел из другого метода (Activity в Android) вызвать асинхронную задачу и перехватить обратный вызов как лямбда, что-то вроде:
myTask.executeAsyncTask(результат -> { System.out.println("Задача выполнена с результатом: " + результат); }, е -> { е.printStackTrace(); }); но не могу заставить это работать. Как мне это сделать правильно?
Вот мой класс задач:
публичный интерфейс TaskCallback { void onTaskCompleted (логический результат); void onTaskFailed (Исключение е); } общественный класс AsyncTaskExample { частный окончательный исполнитель-исполнитель = Executors.newSingleThreadExecutor(); public void ExecuteAsyncTask (обратный вызов TaskCallback) { FutureTask TaskSyncFiles = new FutureTask(() -> { // задача вернуть истину; }); исполнитель.execute(taskSyncFiles); исполнитель.execute(() -> { пытаться { Логический результат = TaskSyncFiles.get(); callback.onTaskCompleted(результат); } catch (InterruptedException | ExecutionException e) { callback.onTaskFailed(e); } }); } } Я бы хотел из другого метода (Activity в Android) вызвать асинхронную задачу и перехватить обратный вызов как лямбда, что-то вроде:
myTask.executeAsyncTask(результат -> { System.out.println("Задача выполнена с результатом: " + результат); }, е -> { е.printStackTrace(); }); но не могу заставить это работать. Как мне это сделать правильно?
-
- Похожие темы
- Ответы
- Просмотры
- Последнее сообщение
-
-
Производительность foreach, array_map с лямбда-выражением и array_map со статической функцией
Anonymous » » в форуме Php - 0 Ответы
- 10 Просмотры
-
Последнее сообщение Anonymous
-