From fa4a6c6b60abf5f950a1a896dad14f953027b0fa Mon Sep 17 00:00:00 2001
From: wangzhengquan <wangzhengquan85@126.com>
Date: 星期二, 22 十二月 2020 10:57:50 +0800
Subject: [PATCH] update
---
test_net_socket/test_net_mod_socket.c | 45 ++++++++++++++++++++++++++++++++++-----------
1 files changed, 34 insertions(+), 11 deletions(-)
diff --git a/test_net_socket/test_net_mod_socket.c b/test_net_socket/test_net_mod_socket.c
index 08f3589..1b6cf33 100644
--- a/test_net_socket/test_net_mod_socket.c
+++ b/test_net_socket/test_net_mod_socket.c
@@ -41,7 +41,7 @@
}
}
-
+// 鎵撳嵃鎺ュ彈鍒扮殑璁㈤槄娑堟伅
void *print_sub_msg(void *sockt) {
pthread_detach(pthread_self());
void *recvbuf;
@@ -55,9 +55,35 @@
}
+void *bus_handler(void *sockt) {
+ pthread_detach(pthread_self());
+
+ char action[512];
+ while ( true) {
+ printf("Input action: Close?\n");
+ if(scanf("%s",action) < 1) {
+ printf("Invalide action\n");
+ continue;
+ }
+
+ if(strcmp(action, "close") == 0) {
+ bus_server_socket_wrapper_close(sockt);
+ break;
+ } else {
+ printf("Invalide action\n");
+ }
+ }
+
+}
+
+
+
void start_bus_server() {
printf("Start bus server\n");
void * server_socket = bus_server_socket_wrapper_open();
+ pthread_t tid;
+ // 鍒涘缓涓�涓嚎绋�,鍙互鍏抽棴bus
+ pthread_create(&tid, NULL, bus_handler, server_socket);
if(bus_server_socket_wrapper_start_bus(server_socket) != 0) {
printf("start bus failed\n");
exit(1);
@@ -83,7 +109,7 @@
}
}
-
+// 浜や簰寮忓鎴风
void start_net_client(char *sendlist, char*publist ){
client = net_mod_socket_open();
char content[MAXLINE];
@@ -95,6 +121,7 @@
net_mod_recv_msg_t *recv_arr;
pthread_t tid;
+ // 鍒涘缓涓�涓嚎绋嬫帴鍙楄闃呮秷鎭�
pthread_create(&tid, NULL, print_sub_msg, client);
//192.168.5.10:5000:11, 192.168.5.22:5000:11, 192.168.5.104:5000:11
@@ -176,11 +203,6 @@
}
-
-
-
-
-
void *_run_sendandrecv_(void *arg) {
Targ *targ = (Targ *)arg;
@@ -348,6 +370,10 @@
// port = atoi(argv[2]);
+ if(opt.fun == NULL) {
+ usage(argv[0]);
+ exit(1);
+ }
if (strcmp("start_net_proxy", opt.fun) == 0 ) {
if(opt.port == 0) {
@@ -358,10 +384,7 @@
}
else if (strcmp("start_bus_server", opt.fun) == 0) {
- if(opt.key == 0) {
- usage(argv[0]);
- exit(1);
- }
+
start_bus_server();
}
else if (strcmp("start_reply", opt.fun) == 0) {
--
Gitblit v1.8.0