mongoc_stream_read()#
Synopsis#
ssize_t
mongoc_stream_read (mongoc_stream_t *stream,
void *buf,
size_t count,
size_t min_bytes,
int32_t timeout_msec);
Parameters#
stream
: A mongoc_stream_t.buf
: The buffer to read into.count
: The number of bytes to read.min_bytes
: The minimum number of bytes to read, or else indicate failure.timeout_msec
: The number of milliseconds to wait before failure, a timeout of 0 will not block. If negative, use the default timeout.
The mongoc_stream_read() function shall perform a read from a mongoc_stream_t. It’s modeled on the API and semantics of read()
, though the parameters map only loosely.
Warning
The “default timeout” indicated by a negative value is both unspecified and
unrelated to the documented default values for *TimeoutMS
URI options.
To specify a default timeout value for a *TimeoutMS
URI option, use the
MONGOC_DEFAULT_*
constants defined in mongoc-client.h
.
Returns#
The mongoc_stream_read() function returns the number of bytes read on success. It returns >= 0
and < min_bytes
when end-of-file is encountered and -1
on failure. errno
is set upon failure.