# mongoc_stream_readv()

## Synopsis

    ssize_t
    mongoc_stream_readv (mongoc_stream_t *stream,
                         mongoc_iovec_t  *iov,
                         size_t           iovcnt,
                         size_t           min_bytes,
                         int32_t          timeout_msec);

## Parameters

stream | A mongoc_stream_t.
iov | A vector of mongoc_iovec_t.
iovcnt | The number of items in iov.
min_bytes | The minimum number of bytes to read or failure will be indicated.
timeout_msec | A timeout in milliseconds, or 0 to indicate non-blocking. A negative value with use the default timeout.

This function is identical to mongoc_stream_read() except that it takes a mongoc_iovec_t to perform gathered I/O.

## Returns

>= 0 on success, -1 on failure and errno is set.

## See Also

mongoc_stream_read()

mongoc_stream_write()

mongoc_stream_writev()