mirror of
				https://github.com/postgres/postgres.git
				synced 2025-10-29 22:49:41 +03:00 
			
		
		
		
	This includes removing tabs after periods in C comments, which was applied to back branches, so this change should not effect backpatching.
		
			
				
	
	
		
			46 lines
		
	
	
		
			1.2 KiB
		
	
	
	
		
			C
		
	
	
	
	
	
			
		
		
	
	
			46 lines
		
	
	
		
			1.2 KiB
		
	
	
	
		
			C
		
	
	
	
	
	
| /*--------------------------------------------------------------------------
 | |
|  *
 | |
|  * test_shm_mq.h
 | |
|  *		Definitions for shared memory message queues
 | |
|  *
 | |
|  * Copyright (C) 2013, PostgreSQL Global Development Group
 | |
|  *
 | |
|  * IDENTIFICATION
 | |
|  *		contrib/test_shm_mq/test_shm_mq.h
 | |
|  *
 | |
|  * -------------------------------------------------------------------------
 | |
|  */
 | |
| 
 | |
| #ifndef TEST_SHM_MQ_H
 | |
| #define TEST_SHM_MQ_H
 | |
| 
 | |
| #include "storage/dsm.h"
 | |
| #include "storage/shm_mq.h"
 | |
| #include "storage/spin.h"
 | |
| 
 | |
| /* Identifier for shared memory segments used by this extension. */
 | |
| #define		PG_TEST_SHM_MQ_MAGIC		0x79fb2447
 | |
| 
 | |
| /*
 | |
|  * This structure is stored in the dynamic shared memory segment.  We use
 | |
|  * it to determine whether all workers started up OK and successfully
 | |
|  * attached to their respective shared message queues.
 | |
|  */
 | |
| typedef struct
 | |
| {
 | |
| 	slock_t		mutex;
 | |
| 	int			workers_total;
 | |
| 	int			workers_attached;
 | |
| 	int			workers_ready;
 | |
| } test_shm_mq_header;
 | |
| 
 | |
| /* Set up dynamic shared memory and background workers for test run. */
 | |
| extern void test_shm_mq_setup(int64 queue_size, int32 nworkers,
 | |
| 				  dsm_segment **seg, shm_mq_handle **output,
 | |
| 				  shm_mq_handle **input);
 | |
| 
 | |
| /* Main entrypoint for a worker. */
 | |
| extern void test_shm_mq_main(Datum);
 | |
| 
 | |
| #endif
 |