| QUARK_QUEUE_BLOCK(3) | Library Functions Manual | QUARK_QUEUE_BLOCK(3) | 
quark_queue_block —
    block waiting for quark events
#include
  <quark.h>
int
  
  quark_queue_block(struct
    quark_queue *qq);
quark_queue_block blocks the calling process until there
  would be events to be read with
  quark_queue_get_event(3).
Internally this will call
    epoll_wait(2) on the descriptor
    returned by
    quark_queue_get_epollfd(3),
    the call is also arranged with a reasonable timeout, this is needed because
    perf-ring file descriptors only become readable once a certain amount of
    data surpasses a threshold. On the return from
    quark_queue_block, the caller should call
    quark_queue_get_event(3)
    until it returns zero, signifying there are no more events to be read. See
    quark(7) for an example.
Zero on success, -1 otherwise and errno is set.
quark_event_dump(3), quark_process_lookup(3), quark_queue_close(3), quark_queue_default_attr(3), quark_queue_get_epollfd(3), quark_queue_get_event(3), quark_queue_get_stats(3), quark_queue_open(3), quark(7), quark-btf(8), quark-mon(8), quark-test(8)
| December 1, 2024 | Linux |