diff options
Diffstat (limited to 'src/squeue/squeue.h')
-rw-r--r-- | src/squeue/squeue.h | 27 |
1 files changed, 27 insertions, 0 deletions
diff --git a/src/squeue/squeue.h b/src/squeue/squeue.h new file mode 100644 index 0000000..4730e3d --- /dev/null +++ b/src/squeue/squeue.h @@ -0,0 +1,27 @@ +struct squeue_t { + int shmid; + int mode; + char *pool; + /* pointers */ + int head_idx; + int squeue_idx; + /* counters */ + int squeue_locks; + int squeue_lost; + int squeue_oops; + int squeue_pops; +}; + + +#define Q_OPEN 0 +#define Q_CREAT 1 +#define Q_WAIT 2 + +int squeue_release(const char *file); +struct squeue_t *squeue_open(const char *file, int init); +int squeue_close(struct squeue_t *q); +void squeue_free(struct squeue_t *q); +int squeue_push(struct squeue_t *q, const char *str, int lock); +int squeue_pop(struct squeue_t *q); +char *squeue_get(struct squeue_t *q, int lock); +void squeue_stats(struct squeue_t *q); |