codekingpro/portable-devtools
115k
1/*-------------------------------------------------------------------------2 *3 * tqueue.h4 * Use shm_mq to send & receive tuples between parallel backends5 *6 * Portions Copyright (c) 1996-2023, PostgreSQL Global Development Group7 * Portions Copyright (c) 1994, Regents of the University of California8 *9 * src/include/executor/tqueue.h10 *11 *-------------------------------------------------------------------------12 */13 14#ifndef TQUEUE_H15#define TQUEUE_H16 17#include "storage/shm_mq.h"18#include "tcop/dest.h"19 20/* Opaque struct, only known inside tqueue.c. */21typedef struct TupleQueueReader TupleQueueReader;22 23/* Use this to send tuples to a shm_mq. */24extern DestReceiver *CreateTupleQueueDestReceiver(shm_mq_handle *handle);25 26/* Use these to receive tuples from a shm_mq. */27extern TupleQueueReader *CreateTupleQueueReader(shm_mq_handle *handle);28extern void DestroyTupleQueueReader(TupleQueueReader *reader);29extern MinimalTuple TupleQueueReaderNext(TupleQueueReader *reader,30 bool nowait, bool *done);31 32#endif /* TQUEUE_H */33 