PostgreSQL Source Code
git master
|
Go to the source code of this file.
Data Structures | |
struct | test_shm_mq_header |
Macros | |
#define | PG_TEST_SHM_MQ_MAGIC 0x79fb2447 |
Functions | |
void | test_shm_mq_setup (int64 queue_size, int32 nworkers, dsm_segment **segp, shm_mq_handle **output, shm_mq_handle **input) |
PGDLLEXPORT void | test_shm_mq_main (Datum) pg_attribute_noreturn() |
#define PG_TEST_SHM_MQ_MAGIC 0x79fb2447 |
Definition at line 22 of file test_shm_mq.h.
PGDLLEXPORT void test_shm_mq_main | ( | Datum | main_arg | ) |
Definition at line 47 of file worker.c.
References attach_to_queues(), BackendPidGetProc(), BackgroundWorkerUnblockSignals(), BackgroundWorker::bgw_notify_pid, copy_messages(), DatumGetInt32(), DEBUG1, die, dsm_attach(), dsm_detach(), dsm_segment_address(), elog, ereport, errcode(), errmsg(), ERROR, test_shm_mq_header::mutex, MyBgworkerEntry, PG_TEST_SHM_MQ_MAGIC, pqsignal(), proc_exit(), PGPROC::procLatch, SetLatch(), shm_toc_attach(), shm_toc_lookup(), SpinLockAcquire, SpinLockRelease, test_shm_mq_header::workers_attached, test_shm_mq_header::workers_ready, and test_shm_mq_header::workers_total.
void test_shm_mq_setup | ( | int64 | queue_size, |
int32 | nworkers, | ||
dsm_segment ** | segp, | ||
shm_mq_handle ** | output, | ||
shm_mq_handle ** | input | ||
) |
Definition at line 51 of file setup.c.
References cancel_on_dsm_detach(), cleanup_background_workers(), worker_state::handle, input, output, pfree(), PointerGetDatum(), setup_background_workers(), setup_dynamic_shared_memory(), shm_mq_attach(), and wait_for_workers_to_become_ready().
Referenced by test_shm_mq(), and test_shm_mq_pipelined().