Interface RExecutorService

    • Method Detail

      • submit

        <T> RExecutorFuture<T> submit​(Callable<T> task)
        Synchronously submits a value-returning task for execution asynchronously and returns a Future representing the pending results of the task. The Future's get method will return the task's result upon successful completion.
        Specified by:
        submit in interface ExecutorService
        Type Parameters:
        T - the type of the task's result
        Parameters:
        task - the task to submit
        Returns:
        a Future representing pending completion of the task
      • submit

        <T> RExecutorFuture<T> submit​(Callable<T> task,
                                      long timeToLive,
                                      TimeUnit timeUnit)
        Synchronously submits a value-returning task with defined timeToLive parameter for execution asynchronously. Returns a Future representing the pending results of the task. The Future's get method will return the task's result upon successful completion.
        Type Parameters:
        T - the type of the task's result
        Parameters:
        task - the task to submit
        timeToLive - - time to live interval
        timeUnit - - unit of time to live interval
        Returns:
        a Future representing pending completion of the task
      • submit

        RExecutorBatchFuture submit​(Callable<?>... tasks)
        Synchronously submits tasks batch for execution asynchronously. All tasks are stored to executor request queue atomically, if case of any error none of tasks will be added.
        Parameters:
        tasks - - tasks to execute
        Returns:
        Future object
      • submit

        <T> RExecutorFuture<T> submit​(Runnable task,
                                      T result)
        Synchronously submits a Runnable task for execution asynchronously and returns a RExecutorFuture representing that task. The Future's get method will return the given result upon successful completion.
        Specified by:
        submit in interface ExecutorService
        Type Parameters:
        T - the type of the result
        Parameters:
        task - the task to submit
        result - the result to return
        Returns:
        a Future representing pending completion of the task
      • submit

        RExecutorFuture<?> submit​(Runnable task)
        Synchronously submits a Runnable task for execution asynchronously. Returns a RExecutorFuture representing task completion. The Future's get method will return null upon successful completion.
        Specified by:
        submit in interface ExecutorService
        Parameters:
        task - the task to submit
        Returns:
        a Future representing pending completion of the task
      • submit

        RExecutorFuture<?> submit​(Runnable task,
                                  long timeToLive,
                                  TimeUnit timeUnit)
        Synchronously submits a task with defined timeToLive parameter for execution asynchronously. Returns a Future representing task completion. The Future's get method will return the task's result upon successful completion.
        Parameters:
        task - the task to submit
        timeToLive - - time to live interval
        timeUnit - - unit of time to live interval
        Returns:
        a Future representing pending completion of the task
      • submit

        RExecutorBatchFuture submit​(Runnable... tasks)
        Synchronously submits tasks batch for execution asynchronously. All tasks are stored to executor request queue atomically, if case of any error none of tasks will be added.
        Parameters:
        tasks - - tasks to execute
        Returns:
        Future object
      • getName

        String getName()
        Returns executor name
        Returns:
        name of service
      • delete

        boolean delete()
        Deletes executor request queue and state objects
        Returns:
        true if any of objects were deleted
      • registerWorkers

        @Deprecated
        void registerWorkers​(int workers)
        Deprecated.
      • registerWorkers

        void registerWorkers​(WorkerOptions options)
        Register workers
        Parameters:
        options - - worker options
      • getTaskCount

        int getTaskCount()
        Returns amount of tasks awaiting for execution and/or currently in execution.
        Returns:
        amount of tasks
      • countActiveWorkers

        int countActiveWorkers()
        Returns active workers amount available for tasks execution.
        Returns:
        workers amount
      • hasTask

        boolean hasTask​(String taskId)
        Returns true if this Executor Service has task by taskId awaiting for execution and/or currently in execution
        Parameters:
        taskId - - id of task
        Returns:
        true if this Executor Service has task
      • getTaskIds

        Set<String> getTaskIds()
        Returns list of task ids awaiting for execution and/or currently in execution.
        Returns:
        task ids
      • cancelTask

        boolean cancelTask​(String taskId)
        Cancel task by id
        Parameters:
        taskId - - id of task
        Returns:
        true if task has been canceled successfully
        See Also:
        RExecutorFuture.getTaskId()
      • execute

        void execute​(Runnable... tasks)
        Submits tasks batch for execution synchronously. All tasks are stored to executor request queue atomically, if case of any error none of tasks will be added.
        Parameters:
        tasks - - tasks to execute