Class DefaultRejectedExecutionHandler

  • All Implemented Interfaces:
    java.util.concurrent.RejectedExecutionHandler

    public class DefaultRejectedExecutionHandler
    extends java.lang.Object
    implements java.util.concurrent.RejectedExecutionHandler
    Default rejected execution handler that always throws NoRejectedHandlerError, with a message containing useful information:
    • Queue size for explaining why it has been rejected.
    • Executor information, a describer of ThreadPoolExecutor which calls the String method of that class.
    • Thread information, a describer of Runnable which calls the String method of that class.

    Defined at ThreadsPooling.DEFAULT_REJECTED_EXECUTION_HANDLER.

    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      void rejectedExecution​(java.lang.Runnable thread, java.util.concurrent.ThreadPoolExecutor executor)
      Method that may be invoked by a ThreadPoolExecutor when execute cannot accept a task.
      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    • Constructor Detail

      • DefaultRejectedExecutionHandler

        public DefaultRejectedExecutionHandler()
    • Method Detail

      • rejectedExecution

        public void rejectedExecution​(java.lang.Runnable thread,
                                      java.util.concurrent.ThreadPoolExecutor executor)
        Method that may be invoked by a ThreadPoolExecutor when execute cannot accept a task. This may occur when no more threads or queue slots are available because their bounds would be exceeded, or upon shutdown of the Executor.

        In the absence of other alternatives, the method may throw an unchecked RejectedExecutionException, which will be propagated to the caller of execute.

        Specified by:
        rejectedExecution in interface java.util.concurrent.RejectedExecutionHandler
        Parameters:
        thread - the runnable task requested to be executed
        executor - the executor attempting to execute this task
        Throws:
        java.util.concurrent.RejectedExecutionException - always
        NoRejectedHandlerError - always - custom exception that is being thrown which inherits from RejectedExecutionException.
        See Also:
        NoRejectedHandlerError