From 8b4ddf10e71e1c8fabd33c72b282f7da65ff682f Mon Sep 17 00:00:00 2001
From: wangzhengquan <wangzhengquan85@126.com>
Date: 星期二, 14 七月 2020 15:59:44 +0800
Subject: [PATCH] commit

---
 queue/include/shm_queue_wrapper.h |   48 +++++++++++++++++++++++++++++++++++-------------
 1 files changed, 35 insertions(+), 13 deletions(-)

diff --git a/queue/include/shm_queue_wrapper.h b/queue/include/shm_queue_wrapper.h
index cdfb2e2..6d9013b 100644
--- a/queue/include/shm_queue_wrapper.h
+++ b/queue/include/shm_queue_wrapper.h
@@ -22,6 +22,10 @@
  */
 void shm_destroy();
 
+ 
+
+//绉婚櫎涓嶅寘鍚湪keys涓殑闃熷垪
+void shm_remove_queues_exclue(void *keys, int length);
 /**
  * 鍒涘缓闃熷垪
  * @ shmqueue 
@@ -31,58 +35,76 @@
 void* shmqueue_create( int * key, int queue_size);
 
 /**
- * 缁戝畾key鍒伴槦鍒楋紝浣嗘槸骞朵笉浼氬垱寤洪槦鍒椼�傚鏋滄病鏈夊搴旀寚瀹歬ey鐨勯槦鍒楁彁绀洪敊璇苟杩斿洖绌哄��
+ * 缁戝畾key鍒伴槦鍒楋紝浣嗘槸骞朵笉浼氬垱寤洪槦鍒椼�傚鏋滄病鏈夊搴旀寚瀹歬ey鐨勯槦鍒楁彁绀洪敊璇苟閫�鍑�
  */
-void* shmqueue_attach(int key);
+void* shmqueue_attach(int key) ;
+
 /**
  * 閿�姣�
 */
-void shmqueue_drop(void * _shmqueue) ;
+void shmqueue_drop(void * _shmqueue);
 
 /**
  * 闃熷垪鍏冪礌鐨勪釜鏁�
  */
-int shmqueue_size(void * _shmqueue);
+int shmqueue_size(void * _shmqueue) ;
+
 /**
  * 鏄惁宸叉弧
+ * @return 1鏄紝 0鍚�
  */
 int shmqueue_full(void * _shmqueue);
 
 /**
  * 鏄惁涓虹┖
+ * @return 1鏄紝 0鍚�
  */
 int shmqueue_empty(void * _shmqueue) ;
 
 /**
- * 鍏ラ槦, 闃熷垪婊℃椂绛夊緟
+ * 鍏ラ槦, 闃熷垪婊℃椂绛夊緟.
+ * @return 1 鍏ラ槦鎴愬姛, 0 鍏ラ槦澶辫触
  */
-int shmqueue_push(void * _shmqueue, void *src_ele, int ele_size);
+int shmqueue_push(void * _shmqueue, void *src, int size);
 
 /**
- * 鍏ラ槦, 闃熷垪婊℃椂绔嬪嵆杩斿洖
+ * 鍏ラ槦, 闃熷垪婊℃椂绔嬪嵆杩斿洖.
+ * @return 1 鍏ラ槦鎴愬姛, 0 鍏ラ槦澶辫触
  */
-int shmqueue_push_nowait(void * _shmqueue, void *src_ele, int ele_size) ;
+int shmqueue_push_nowait(void * _shmqueue, void *src, int size) ;
 
 /**
  * 鍏ラ槦, 鎸囧畾鏃堕棿鍐呭叆闃熶笉鎴愬姛灏辫繑鍥�
- * timespec {sec绉�, nsec绾崇}
+ * @sec 绉�
+ * @nsec 绾崇
+ * @return 1 鍏ラ槦鎴愬姛, 0 鍏ラ槦澶辫触
  */
-int shmqueue_push_timeout(void * _shmqueue, void *src_ele, int ele_size, void * _timeout);
+int shmqueue_push_timeout(void * _shmqueue, void *src, int size,  int sec, int nsec) ;
 
 /**
  * 鍑洪槦, 闃熷垪绌烘椂绛夊緟
+ * @return 1 鍑洪槦鎴愬姛锛� 0鍑洪槦澶辫触
  */
-int shmqueue_pop(void * _shmqueue, void *dest_ele);
+int shmqueue_pop(void * _shmqueue, void **dest, int *size);
 
 /**
  * 鍑洪槦, 闃熷垪绌烘椂绔嬪嵆杩斿洖
+ * @return 1 鍑洪槦鎴愬姛锛� 0鍑洪槦澶辫触
  */
-int shmqueue_pop_nowait(void * _shmqueue, void *dest_ele) ;
+int shmqueue_pop_nowait(void * _shmqueue, void **dest, int *size) ;
 
 /**
  * 鍑洪槦, 鎸囧畾鏃堕棿鍐呭嚭闃熶笉鎴愬姛灏辫繑鍥�
+ * @sec绉�
+ * @nsec绾崇
+ * @return 1 鍑洪槦鎴愬姛锛� 0鍑洪槦澶辫触
  */
-int shmqueue_pop_timeout(void * _shmqueue, void *dest_ele, void * _timeout);
+int shmqueue_pop_timeout(void * _shmqueue, void **dest, int *size, int sec, int nsec);
+
+/**
+ * 閲婃斁鍑洪槦鍒嗛厤鐨勫唴瀛�
+ */
+void shmqueue_free(void *ptr);
 
 #ifdef __cplusplus
 }

--
Gitblit v1.8.0