qb_rb_chunk_peek - Man Page

Read (without reclaiming) the last chunk.

Synopsis

#include <qb/qbrb.h>

ssize_t qb_rb_chunk_peek(
    qb_ringbuffer_t   *rb,          /* ringbuffer instance */
    /*
     * (out) a pointer to the next chunk to read (not copied).
     */
    void             **data_out,
    int32_t            ms_timeout   /* (in) time to wait for new data.*/
);

Params

rb         ringbuffer instance

data_out   (out) a pointer to the next chunk to read (not copied).

ms_timeout (in) time to wait for new data.

Description

This function is a way of accessing the next chunk without a memcpy(). You can read the chunk data in place.

Return Value

the size of the chunk (0 if buffer empty).

Note

This function will not "pop" the chunk, you will need to call qb_rb_chunk_reclaim().

See Also

qb_rb_close(3), qb_rb_refcount_get(3), qb_rb_chmod(3), qb_rb_chown(3), qb_rb_open(3), qb_rb_write_to_file(3), qb_rb_create_from_file(3), qb_rb_chunks_used(3), qb_rb_chunk_reclaim(3), qb_rb_space_used(3), qb_rb_chunk_write(3), qb_rb_shared_user_data_get(3), qb_rb_chunk_commit(3), qb_rb_space_free(3), qb_rb_name_get(3), qb_rb_chunk_alloc(3), qb_rb_chunk_read(3)

Referenced By

qb_rb_chmod(3), qb_rb_chown(3), qb_rb_chunk_alloc(3), qb_rb_chunk_commit(3), qb_rb_chunk_read(3), qb_rb_chunk_reclaim(3), qb_rb_chunks_used(3), qb_rb_chunk_write(3), qb_rb_close(3), qb_rb_create_from_file(3), qbrb.h(3), qb_rb_name_get(3), qb_rb_open(3), qb_rb_refcount_get(3), qb_rb_shared_user_data_get(3), qb_rb_space_free(3), qb_rb_space_used(3), qb_rb_write_to_file(3).

2023-07-21 libqb Programmer's Manual