From 68d23225a38a35f1325eb39fa4ed5a005d5de473 Mon Sep 17 00:00:00 2001 From: fujuntang <fujuntang@aiot.com> Date: 星期三, 11 八月 2021 09:50:20 +0800 Subject: [PATCH] fix from 3.1 first commit --- test_socket/bus_test.cpp | 37 ++++++++++++++++++------------------- 1 files changed, 18 insertions(+), 19 deletions(-) diff --git a/test_socket/bus_test.cpp b/test_socket/bus_test.cpp index eb857d4..8d630b6 100644 --- a/test_socket/bus_test.cpp +++ b/test_socket/bus_test.cpp @@ -3,7 +3,12 @@ #include "shm_mm_wrapper.h" #include "usg_common.h" #include "mm.h" +#include "logger_factory.h" + +#include "bus_error.h" +static Logger *logger = LoggerFactory::getLogger(); + BusServerSocket * server_socket; void sigint_handler(int sig) { @@ -19,19 +24,20 @@ } -void *run_recv2(void *skptr) { +void *run_recv(void *skptr) { pthread_detach(pthread_self()); void *recvbuf; int size; int key; + int rv; ShmModSocket *sk = (ShmModSocket *)skptr; -printf("run_recv\n"); struct timespec timeout = {2, 0}; while (true) { printf("run_recv before\n"); - rv = sk->recvfrom_timeout( &recvbuf, &size, &key, &timeout); + // rv = sk->recvfrom_timeout( &recvbuf, &size, &key, &timeout); + rv = sk->recvfrom( &recvbuf, &size, &key); if(rv == 0) { printf("鏀跺埌璁㈤槄娑堟伅:%s\n", recvbuf); free(recvbuf); @@ -44,34 +50,27 @@ } -void *run_recv(void *skptr) { - while(true) { - printf("================run_recv\n"); - sleep(1); - } -} - -void client2(int key) { - ShmModSocket *sk = new ShmModSocket(); - run_recv((void *)sk); -} - void client(int key) { ShmModSocket *sk = new ShmModSocket(); pthread_t tid; - pthread_create(&tid, NULL, run_recv, (void *)sk); + + int size; char action[512]; char topic[512]; char content[512]; long i = 0; + + + pthread_create(&tid, NULL, run_recv, (void *)sk); + while (true) { //printf("Usage: pub <topic> [content] or sub <topic>\n"); - printf("Can I help you? sub, pub, desub or quit\n"); - scanf("%s",action); - + printf("Can I help you? sub, pub, desub or quit %d\n", i++); + // scanf("%s", action); + std::cin >> action; if(strcmp(action, "sub") == 0) { printf("Please input topic!\n"); scanf("%s", topic); -- Gitblit v1.8.0