int main(int argc,char **argv){ kn_net_open(); kn_proactor_t p = kn_new_proactor(); kn_sockaddr local; kn_fd_t l; kn_addr_init_in(&local,argv[1],atoi(argv[2])); l = kn_dgram_listen(p,SOCK_DGRAM,&local,transfer_finish); struct dgram_session *session = calloc(1,sizeof(*session)); session->s = l; kn_fd_setud(l,session); dgram_session_recv(session); uint64_t tick,now; tick = now = kn_systemms64(); while(1){ kn_proactor_run(p,50); now = kn_systemms64(); if(now - tick > 1000) { uint32_t elapse = (uint32_t)(now-tick); totalbytes = (totalbytes/elapse)/1024; printf("totalbytes:%lldMB/s\n",totalbytes); tick = now; totalbytes = 0; } } return 0; }
int main(int argc,char **argv){ kn_net_open(); kn_proactor_t p = kn_new_proactor(); kn_sockaddr remote; kn_addr_init_un(&remote,argv[1]); int client_count = atoi(argv[2]); int i = 0; send_size = atoi(argv[3]); for(; i < client_count; ++i){ kn_asyn_connect(p,0,SOCK_STREAM,NULL,&remote,on_connect,(void*)p,30000); } while(1){ kn_proactor_run(p,50); } return 0; }
int main(int argc,char **argv){ kn_net_open(); kn_proactor_t p = kn_new_proactor(); kn_sockaddr local; kn_addr_init_in(&local,argv[1],atoi(argv[2])); kn_listen(p,&local,on_accept,(void*)p); uint64_t tick,now; tick = now = kn_systemms64(); while(1){ kn_proactor_run(p,50); now = kn_systemms64(); if(now - tick > 1000) { uint32_t elapse = (uint32_t)(now-tick); totalbytes = (totalbytes/elapse)/1024; printf("client_count:%d,totalbytes:%lldMB/s\n",client_count,totalbytes); tick = now; totalbytes = 0; } } return 0; }
int main(int argc,char **argv) { kn_net_open(); kn_proactor_t p = kn_new_proactor(); kn_sockaddr local; kn_addr_init_in(&local,argv[1],atoi(argv[2])); kn_stream_server_t s = kn_new_stream_server(p,&local,new_client); uint64_t tick,now; tick = now = kn_systemms64(); while(1){ kn_proactor_run(p,50); now = kn_systemms64(); if(now - tick > 1000) { uint32_t elapse = (uint32_t)(now-tick); recvcount = recvcount*1000/elapse; printf("client_count:%d,recvcount:%d/s,buffer_count:%u\n",client_count,recvcount,buffer_count); tick = now; recvcount = 0; } } return 0; }