| | |
| | | #include "net_mod_server_socket_wrapper.h" |
| | | #include "net_mod_socket_wrapper.h" |
| | | #include "shm_mm.h" |
| | | #include "shm_mm_wraper.h" |
| | | #include "usg_common.h" |
| | | #include <getopt.h> |
| | | |
| | |
| | | |
| | | if (fgets(content, MAXLINE, stdin) != NULL) { |
| | | // 收到消息的节点即使没有对应的信息, 也要回复一个表示无的消息,否则会一直等待 |
| | | n = net_mod_socket_sendandrecv_timeout(client, node_arr, node_arr_size, content, |
| | | strlen(content), &recv_arr, &recv_arr_size, 5000); |
| | | n = net_mod_socket_sendandrecv(client, node_arr, node_arr_size, content, |
| | | strlen(content), &recv_arr, &recv_arr_size); |
| | | printf("send %d nodes\n", n); |
| | | for(i=0; i<recv_arr_size; i++) { |
| | | printf("host:%s, port: %d, key:%d, content: %s\n", |
| | |
| | | |
| | | net_node_t *node_arr; |
| | | int node_arr_size = parse_node_list(targ->sendlist, &node_arr); |
| | | |
| | | |
| | | void * client = net_mod_socket_open(); |
| | | |
| | |
| | | |
| | | |
| | | int main(int argc, char *argv[]) { |
| | | shm_init(512); |
| | | shm_mm_wrapper_init(512); |
| | | |
| | | argument_t opt = parse_args(argc, argv); |
| | | |
| | |
| | | net_node_t *node_arr = (net_node_t *) calloc(entry_arr_len, sizeof(net_node_t)); |
| | | for(i = 0; i < entry_arr_len; i++) { |
| | | property_arr_len = str_split(entry_arr[i], ":", &property_arr); |
| | | printf("%s, %s, %s\n", property_arr[0], property_arr[1], property_arr[2]); |
| | | node_arr[i] = {trim(property_arr[0], 0), atoi(property_arr[1]), atoi(property_arr[2])}; |
| | | free(entry_arr[i]); |
| | | free(property_arr[1]); |
| | |
| | | } |
| | | |
| | | void print_node_list(net_node_t *node_arr, int len) { |
| | | printf("============node list begin==========\n"); |
| | | for(int i = 0; i < len; i++) { |
| | | printf("%s,%d,%d,\n", node_arr[i].host, node_arr[i].port, node_arr[i].key); |
| | | } |
| | | printf("============node list end==========\n"); |
| | | } |