类 ResultHolderResultQueue


  • public class ResultHolderResultQueue
    extends java.lang.Object
    An implementation of the ResultQueue that throttles the number of expected results, limiting it to a maximum at any given time.
    作者:
    Dave Syer
    • 方法概要

      所有方法 实例方法 具体方法 
      修饰符和类型方法说明
      voidexpect()
      Tell the queue to expect one more result.
      booleanisEmpty() 
      booleanisExpecting() 
      voidput​(org.springframework.batch.repeat.support.ResultHolder holder) 
      org.springframework.batch.repeat.support.ResultHoldertake()
      Get the next result as soon as it becomes available.
      • 从类继承的方法 java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    • 构造器详细资料

      • ResultHolderResultQueue

        public ResultHolderResultQueue​(int throttleLimit)
        参数:
        throttleLimit - the maximum number of results that can be expected at any given time.
    • 方法详细资料

      • expect

        public void expect()
                    throws java.lang.InterruptedException
        Tell the queue to expect one more result. Blocks until a new result is available if already expecting too many (as determined by the throttle limit).
        抛出:
        java.lang.InterruptedException
        另请参阅:
        ResultQueue.expect()
      • put

        public void put​(org.springframework.batch.repeat.support.ResultHolder holder)
                 throws java.lang.IllegalArgumentException
        抛出:
        java.lang.IllegalArgumentException
      • take

        public org.springframework.batch.repeat.support.ResultHolder take()
                                                                   throws java.util.NoSuchElementException,
                                                                          java.lang.InterruptedException
        Get the next result as soon as it becomes available.

        Release result immediately if:
        • There is a result that is continuable.
        Otherwise block if either:
        • There is no result (as per contract of ResultQueue).
        • The number of results is less than the number expected.
        Error if either:
        • Not expecting.
        • Interrupted.
        抛出:
        java.util.NoSuchElementException
        java.lang.InterruptedException
        另请参阅:
        ResultQueue.take()