libosmocore 1.10.0.63-d25f
Osmocom core library
|
One instance of an inter-thread queue. More...
#include <it_q.h>
Data Fields | |
struct llist_head | entry |
struct llist_head | list |
pthread_mutex_t | mutex |
unsigned int | current_length |
struct osmo_fd | event_ofd |
const char * | name |
unsigned int | max_length |
void(* | read_cb )(struct osmo_it_q *q, struct llist_head *item) |
void * | data |
One instance of an inter-thread queue.
The user can use this to queue messages between different threads. The enqueue operation is non-blocking (but of course grabs a mutex for the actual list operations to safeguard against races). The receiving thread is woken up by an event_fd which can be registered in the libosmocore select loop handling.
unsigned int osmo_it_q::current_length |
void* osmo_it_q::data |
struct llist_head osmo_it_q::entry |
struct osmo_fd osmo_it_q::event_ofd |
struct llist_head osmo_it_q::list |
unsigned int osmo_it_q::max_length |
pthread_mutex_t osmo_it_q::mutex |
const char* osmo_it_q::name |
void(* osmo_it_q::read_cb) (struct osmo_it_q *q, struct llist_head *item) |