Метод submit() (и другие методы, такие как execute()) в ExecutorService принимает в качестве аргументов задачи для выполнения. Типы задач могут быть следующими:
Runnable: Задача, которая выполняет действие, но не возвращает результат.
java
Callable<V>: Задача, которая может возвращать результат заданного типа V и выбрасывать исключения.
java
Также submit() имеет перегруженную версию, которая принимает Runnable и возвращаемый результат:
java