Provided by: liblibrecast-dev_0.8.0-1.1build1_amd64 

NAME
q_search - search for an entry in a smolq queue
LIBRARY
Librecast library (liblibrecast, -llibrecast)
SYNOPSIS
#include <librecast/q.h> int q_search(q_t *q, void *(*f)(void *), void *restrict arg); Compile and link with -llibrecast.
DESCRIPTION
q_search() searches the queue q to find an entry that matches both f and arg. No locks, so readers may read while we're searching, and writers may write. If something is read while we search, we will still return a positive match for that item, even though it is no longer in the queue. If a writer writes we will not notice that write. If this is a problem, for a particular use-case, an external lock will be required.
RETURN VALUE
The q_push() function returns 1 if found, zero if not found. On error, -1 is returned and errno is set to indicate the error.
ERRORS
The function can fail with any of the errors for sem_getvalue(3).
SEE ALSO
q_job_seek(3), q_pool_create(3), q_pool_destroy(3), q_init(3), q_free(3), q_push(3), q_wait(3), sem_getvalue(3).