Suppose I would like to run static method foo
asynchronously
void foo() throws Exception {...}
Since foo
throws an exception I would prefer create a Callable
and invoke ExecutorService.submit
with it to get a Future
.
Now I wonder how to declare those Callable
and Future
properly.
Should I declare them
Callable<Void> and Future<Void>?
Yes.
Void
is similar to the wrapper classesInteger
,Long
etc. for the primitive typesint
,long
etc. You could say it's a wrapper class forvoid
, even thoughvoid
is not really a type.