/WinTcpServer

一个简单的基于 windows API 的 TCP Server

Primary LanguageC++Apache License 2.0Apache-2.0

WinTcpServer 项目说明

项目描述

基于Windows API开发的TCP服务器端程序,用于监听和服务TCP客户端程序

项目结构

文件和路径 功能
src\ C++ 源码文件

详细描述

  1. 使用 ThreadManager 统一管理和调度整个程序,一个连接对应一个服务线程
  2. ThreadManager 通过一个统一调度线程来实现对服务线程的管理
  3. 通过实现 ITcpDataProcess 接口完成 TCP 数据处理任务
  4. 对网线断开、客户端进程异常等导致的连接异常进行了处理

优点

  1. 使用简单(main函数包含了使用方法),代码**易于理解
  2. 无内存泄露(测试代码中包含内存泄露检测)

缺陷

  1. 线程在执行 read 等阻塞操作时很可能浪费宝贵的 CPU 时间片用于等待
  2. 如果连接较多,频繁创建和销毁线程开销较大