📄 tsdbc.c
字号:
/************************************************************************Database client test program(c) 1995 Innobase OyCreated 10/10/1995 Heikki Tuuri*************************************************************************/#include "com0com.h"#include "com0shm.h"#include "ut0ut.h"#include "mem0mem.h"#include "os0thread.h"#include "sync0ipm.h"#include "sync0sync.h"byte buf[10000];char addr[150];voidtest1(void)/*=======*/{ com_endpoint_t* ep; ulint ret; ulint size; ulint len; ulint addr_len; ulint i, j; ulint tm, oldtm; oldtm = ut_clock(); for (i = 0; i < 10000; i++) { ut_delay(100); } for (j = 0; j < i / 10; j++) { ut_delay(200); } tm = ut_clock(); printf("Wall clock time for test without server %ld milliseconds\n", tm - oldtm); printf("%lu rounds\n", i); ep = com_endpoint_create(COM_SHM); ut_a(ep); size = 8192; ret = com_endpoint_set_option(ep, COM_OPT_MAX_DGRAM_SIZE, (byte*)&size, 0); ut_a(ret == 0); ret = com_bind(ep, "CLI", 3); ut_a(ret == 0); printf("Client endpoint created!\n"); oldtm = ut_clock(); for (i = 0; i < 50000; i++) { ret = com_sendto(ep, (byte*)"Hello from client!\n", 18, "ibsrv", 5); ut_a(ret == 0); ret = com_recvfrom(ep, buf, 10000, &len, addr, 150, &addr_len); ut_a(ret == 0); buf[len] = '\0'; addr[addr_len] = '\0';/* printf( "Message of len %lu\n%s \nreceived from address %s of len %lu\n", len, buf, addr, addr_len);*/ } tm = ut_clock(); printf("Wall clock time for test %ld milliseconds\n", tm - oldtm); printf("%lu message pairs\n", i); printf("System calls in com_shm %lu ip_mutex %lu mutex %lu\n", com_shm_system_call_count, ip_mutex_system_call_count, mutex_system_call_count); ret = com_endpoint_free(ep); ut_ad(ret == 0);}void main(void) /*======*/{ sync_init(); mem_init(); test1(); printf("TESTS COMPLETED SUCCESSFULLY!\n");}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -