--- libaitrpc/example/tcli.c 2012/05/17 12:52:29 1.7.4.4 +++ libaitrpc/example/tcli.c 2012/05/18 23:58:08 1.7.4.19 @@ -4,7 +4,7 @@ #include "rc.h" -int main() +int main(int argc, char **argv) { rpc_cli_t *cli = NULL, *cli2 = NULL; int c, i, ret; @@ -20,26 +20,36 @@ int main() return 1; } + cli2 = rpc_cli_openBLOBClient(cli, 0); + if (!cli2) { + printf("error:: errno=%d %s\n", rpc_GetErrno(), rpc_GetError()); + rpc_cli_closeClient(&cli); + free(blob43); + return 1; + } + #if 0 - for (i = 0; i < 10000; i++) { + printf("\n\n1 pass>>> RPC ping\n\n"); + for (i = 0; i < 100000; i++) { gettimeofday(&before, NULL); - if (rpc_cli_execCall(cli, RPC_REPLY, CALL_SRVPING, NULL, &arr)) { + if ((ret = rpc_cli_ping(cli)) == -1) { printf("error:: errno=%d %s\n", rpc_GetErrno(), rpc_GetError()); + rpc_cli_closeBLOBClient(&cli2); rpc_cli_closeClient(&cli); free(blob43); return 127; } gettimeofday(&after, NULL); - printf("RPC ping seq[0x%04x] #%d --- %f\n", AIT_GET_U16(io_array(arr, 0, ait_val_t*)), - i, (after.tv_sec - before.tv_sec) + (after.tv_usec - before.tv_usec) / 1.e6); - io_freeVars(&arr); + printf("RPC ping seq[0x%04x] #%d --- %f\n", ret, i, + (after.tv_sec - before.tv_sec) + (after.tv_usec - before.tv_usec) / 1.e6); } #endif - printf("\n\n>>> RPC ping without reply!!!\n\n"); + printf("\n\n2 pass>>> RPC ping without reply!!!\n\n"); for (i = 0; i < 10000; i++) { gettimeofday(&before, NULL); if (rpc_cli_execCall(cli, RPC_NOREPLY, CALL_SRVPING, NULL, &arr)) { printf("error:: errno=%d %s\n", rpc_GetErrno(), rpc_GetError()); + rpc_cli_closeBLOBClient(&cli2); rpc_cli_closeClient(&cli); free(blob43); return 127; @@ -49,13 +59,19 @@ int main() printf("RPC ping #%d --- %f\n", i, (after.tv_sec - before.tv_sec) + (after.tv_usec - before.tv_usec) / 1.e6); } - - cli2 = rpc_cli_openBLOBClient(cli, 0); - if (!cli2) { - printf("error:: errno=%d %s\n", rpc_GetErrno(), rpc_GetError()); - rpc_cli_closeClient(&cli); - free(blob43); - return 1; + printf("\n\n3 pass>>> RPC ping\n\n"); + for (i = 0; i < 10000; i++) { + gettimeofday(&before, NULL); + if ((ret = rpc_cli_ping(cli)) == -1) { + printf("error %d:: errno=%d %s\n", i, rpc_GetErrno(), rpc_GetError()); + rpc_cli_closeBLOBClient(&cli2); + rpc_cli_closeClient(&cli); + free(blob43); + return 127; + } + gettimeofday(&after, NULL); + printf("RPC ping seq[0x%04x] #%d --- %f\n", ret, i, + (after.tv_sec - before.tv_sec) + (after.tv_usec - before.tv_usec) / 1.e6); } memset(blob43, 0, 512); @@ -227,7 +243,8 @@ int main() AIT_GET_U8(io_array(arr, 2, ait_val_t*)), AIT_GET_I32(io_array(arr, 3, ait_val_t*))); io_freeVars(&arr); - rpc_cli_execCall(cli, RPC_NOREPLY, CALL_SRVSHUTDOWN, NULL, NULL); + if (argc > 1) + rpc_cli_execCall(cli, RPC_NOREPLY, CALL_SRVSHUTDOWN, NULL, NULL); rpc_cli_closeBLOBClient(&cli2); rpc_cli_closeClient(&cli);