Interface BlockingPool<T>

    • Method Detail

      • maxSize

        int maxSize()
      • takeBatch

        List<ReferenceCountingResourceHolder<T>> takeBatch​(int elementNum,
                                                           long timeoutMs)
        Take resources from the pool, waiting up to the specified wait time if necessary for elements of the given number to become available.
        Parameters:
        elementNum - number of resources to take
        timeoutMs - maximum time to wait for resources, in milliseconds.
        Returns:
        a list of resource holders. An empty list is returned if elementNum resources aren't available.
      • takeBatch

        List<ReferenceCountingResourceHolder<T>> takeBatch​(int elementNum)
        Take resources from the pool, waiting if necessary until the elements of the given number become available.
        Parameters:
        elementNum - number of resources to take
        Returns:
        a list of resource holders. An empty list is returned if elementNum resources aren't available.
      • getPendingRequests

        long getPendingRequests()
        Returns the count of the requests waiting to acquire a batch of resources.
        Returns:
        count of pending requests