public static ClickHouseInputStream of(BlockingQueue<ByteBuffer> queue, int timeout, Runnable postCloseAction) {
        return new BlockingInputStream(queue, timeout, postCloseAction);
    }
Wraps the given blocking queue.

@param queue           non-null blocking queue
@param timeout         read timeout in milliseconds
@param postCloseAction custom action will be performed right after closing
                       the input stream
@return wrapped input
clickhouse-data/src/main/java/com/clickhouse/data/ClickHouseInputStream.java