From abc89da58e0a321fc4d27d0ca70620cd14141d3a Mon Sep 17 00:00:00 2001 From: wangzhengquan <wangzhengquan85@126.com> Date: 星期二, 01 十二月 2020 15:34:35 +0800 Subject: [PATCH] thread local, thread pool , thread safe --- src/socket/net_mod_socket_wrapper.c | 30 +++++++++++++++++++++++++----- 1 files changed, 25 insertions(+), 5 deletions(-) diff --git a/src/socket/net_mod_socket_wrapper.c b/src/socket/net_mod_socket_wrapper.c index 6776b36..1434033 100644 --- a/src/socket/net_mod_socket_wrapper.c +++ b/src/socket/net_mod_socket_wrapper.c @@ -100,10 +100,10 @@ * 濡傛灉寤虹珛杩炴帴鐨勮妭鐐规病鏈夋帴鍙楀埌娑堟伅绛夊緟timeout鐨勬椂闂村悗杩斿洖 * @timeout 绛夊緟鏃堕棿锛屽崟浣嶆槸鍗冨垎涔嬩竴绉� */ -int net_mod_socket_sendandrecv_timout(void *_socket, net_node_t *node_arr, int arrlen, void *send_buf, int send_size, - net_mod_recv_msg_t ** recv_arr, int *recv_arr_size, int timeout){ +int net_mod_socket_sendandrecv_timeout(void *_socket, net_node_t *node_arr, int arrlen, void *send_buf, int send_size, + net_mod_recv_msg_t ** recv_arr, int *recv_arr_size, int timeout){ net_mod_socket_t *sockt = (net_mod_socket_t *)_socket; - return sockt->sockt->sendandrecv_timout(node_arr, arrlen, send_buf, send_size, recv_arr, recv_arr_size, timeout); + return sockt->sockt->sendandrecv_timeout(node_arr, arrlen, send_buf, send_size, recv_arr, recv_arr_size, timeout); } int net_mod_socket_sendandrecv_nowait(void *_socket, net_node_t *node_arr, int arrlen, void *send_buf, int send_size, @@ -125,6 +125,15 @@ net_mod_socket_t *sockt = (net_mod_socket_t *)_socket; return sockt->sockt->pub(node_arr, node_arr_len, topic, topic_size, content, content_size); } +int net_mod_socket_pub_timeout(void *_socket, net_node_t *node_arr, int node_arr_len, char *topic, int topic_size, void *content, int content_size, int msec){ + net_mod_socket_t *sockt = (net_mod_socket_t *)_socket; + return sockt->sockt->pub_timeout(node_arr, node_arr_len, topic, topic_size, content, content_size, msec); +} +int net_mod_socket_pub_nowait(void *_socket, net_node_t *node_arr, int node_arr_len, char *topic, int topic_size, void *content, int content_size){ + net_mod_socket_t *sockt = (net_mod_socket_t *)_socket; + return sockt->sockt->pub_nowait(node_arr, node_arr_len, topic, topic_size, content, content_size); +} + @@ -184,9 +193,9 @@ /** * 鑾峰彇soket绔彛鍙� */ -int net_mod_socket_get_port(void * _socket) { +int net_mod_socket_get_key(void * _socket) { net_mod_socket_t *sockt = (net_mod_socket_t *)_socket; - return sockt->sockt->get_port(); + return sockt->sockt->get_key(); } @@ -208,3 +217,14 @@ return NetModSocket::free_recv_msg_arr(arr, len); } + + + +int shm_mod_socket_remove_keys(int keys[], int length){ + return ShmModSocket::remove_keys(keys, length); +} + +int shm_mod_socket_remove_key(int key){ + int keys[] = {key}; + return ShmModSocket::remove_keys(keys, 1); +} -- Gitblit v1.8.0