Base class for services that do not need a thread while "running"
but may need one during startup and shutdown. Subclasses can
which run in a executor which by default uses a separate thread
for each method.
- Chris Nokleberg
that will be used to run this service.
Subclasses may override this method to use a custom
may configure its worker thread with a specific name, thread group or
priority. The returned executor's
method is called when this service is started and stopped,
and should return promptly.