main.cpp
上传用户:dzyhzl
上传日期:2019-04-29
资源大小:56270k
文件大小:1k
源码类别:

模拟服务器

开发平台:

C/C++

  1. //目前使用的网络协议,头上两个字节是数据包的大小
  2. #include <stdio.h>
  3. #include <stdlib.h>
  4. #include <string.h>
  5. #include <winsock2.h>
  6. #include "../IServer.h"
  7. int main(int argc, char **argv) {
  8. IServer server(100);
  9. server.Startup();
  10. server.Open(inet_addr("127.0.0.1"), 1010);
  11.         server.buffer->startPerf();
  12. unsigned long length;
  13. int i = 0;
  14. while(true) {
  15. #ifdef WIN32
  16. Sleep(1);
  17. #else
  18. sleep(1);
  19. #endif
  20. for(int index = 0; index < 100; index++) {
  21. char *data = (char *)server.GetPackFromClient(index, length);
  22.                         if(data) {
  23. printf("%d index = %d client %d get data %dn", server.buffer->receive_perf.remain_number, i++, index, length);
  24. for(int j = 0; j < 10; j++) {
  25. server.PackDataToClient(index, data, length);
  26. }
  27. server.SendPackToClient(index);
  28. while(data) {
  29. // printf("index = %d client %d get data %dn", i++, index, length);
  30. //                                printf("remain number %dn", server.buffer->send_perf.remain_number);
  31. //                                printf("remain number %dn", server.buffer->receive_perf.remain_number);
  32. data = (char *)server.GetPackFromClient(index, length);
  33. }
  34.                                }
  35. }
  36. }
  37. return 0;
  38. }