Package ai.preferred.venom
Class ThreadedWorkerManager
- java.lang.Object
-
- ai.preferred.venom.ThreadedWorkerManager
-
- All Implemented Interfaces:
Interruptible
,WorkerManager
,AutoCloseable
public class ThreadedWorkerManager extends Object implements WorkerManager
- Author:
- Maksim Tkachenko
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static class
ThreadedWorkerManager.AbstractManagedBlockingWorker
This abstract class exposes the methods to allow submitting tasks for multithreading and implements inline blocking method.
-
Constructor Summary
Constructors Constructor Description ThreadedWorkerManager()
Constructs a threaded worker manager with a specified executor.ThreadedWorkerManager(ExecutorService executor)
Constructs a threaded worker manager with a specified executor.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description void
close()
Worker
getWorker()
Get the result collector in use.void
interrupt()
Interrupt the underlying mechanisms of the class.
-
-
-
Constructor Detail
-
ThreadedWorkerManager
public ThreadedWorkerManager()
Constructs a threaded worker manager with a specified executor.
-
ThreadedWorkerManager
public ThreadedWorkerManager(@Nullable ExecutorService executor)
Constructs a threaded worker manager with a specified executor.- Parameters:
executor
- An executor service
-
-
Method Detail
-
getWorker
public final Worker getWorker()
Description copied from interface:WorkerManager
Get the result collector in use.- Specified by:
getWorker
in interfaceWorkerManager
- Returns:
- an instance of Worker
-
interrupt
public final void interrupt()
Description copied from interface:Interruptible
Interrupt the underlying mechanisms of the class.Please note that this
interrupt
method should be idempotent. In other words, calling thisinterrupt
method more than once should not have any side effect.- Specified by:
interrupt
in interfaceInterruptible
-
close
public final void close()
- Specified by:
close
in interfaceAutoCloseable
-
-